Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Essence of Competitive Programming
Search
@ジュジュ
June 29, 2018
Technology
0
61
Essence of Competitive Programming
@ジュジュ
June 29, 2018
Tweet
Share
More Decks by @ジュジュ
See All by @ジュジュ
チーム分割においていかれたアラートをチームで責任を持てる形に再設計した
juju62q
0
120
ボトムアップでSLOを導入 2年半運用して分かった失敗と変化
juju62q
2
980
Firecracker Snapshottingを調べてみた
juju62q
1
540
SLOを活用した技術的改善
juju62q
10
9.8k
IAM Role for Pods and Instance Meta Data Service
juju62q
1
1.5k
telepresence handson
juju62q
2
4.9k
Wanna Use Vitess in Orientation
juju62q
6
1.3k
machine learning with rancher and K8s on prem
juju62q
5
430
docker-handson-for-researcher
juju62q
3
300
Other Decks in Technology
See All in Technology
「家族アルバム みてね」を支えるS3ライフサイクル戦略
fanglang
2
300
開発現場とセキュリティ担当をつなぐ脅威モデリング
cloudace
0
110
SpannerとAurora DSQLの同時実行制御の違いに想いを馳せる
masakikato5
0
570
Javaの新しめの機能を知ったかぶれるようになる話 #kanjava
irof
3
4.9k
Amazon EKS Auto ModeでKubernetesの運用をシンプルにする
sshota0809
0
120
パスキー導入の課題と ベストプラクティス、今後の展望
ritou
7
1.2k
Re:VIEWで書いた「Compose で Android の edge-to-edge に対応する」をRoo Codeで発表資料にしてもらった
tomoya0x00
0
140
大規模サービスにおける カスケード障害
takumiogawa
3
640
AWS CDK コントリビュート はじめの一歩
yendoooo
1
120
LINEギフトのLINEミニアプリアクセシビリティ改善事例
lycorptech_jp
PRO
0
300
Engineering Managementのグローバルトレンド #emoasis / Engineering Management Global Trend
kyonmm
PRO
6
990
データベースで見る『家族アルバム みてね』の変遷 / The Evolution of Family Album Through the Lens of Databases
kohbis
3
790
Featured
See All Featured
Facilitating Awesome Meetings
lara
53
6.3k
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
4
480
Six Lessons from altMBA
skipperchong
27
3.7k
The Language of Interfaces
destraynor
157
24k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
47
5.3k
GraphQLとの向き合い方2022年版
quramy
45
14k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
44
7.1k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
7
620
Automating Front-end Workflow
addyosmani
1369
200k
Speed Design
sergeychernyshev
28
870
The Power of CSS Pseudo Elements
geoffreycrofte
75
5.7k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
12
620
Transcript
競技プログラミングのエッセンス 2018/06/30 競プロ@芸工 岡野兼也
自己紹介 基本情報 • 岡野兼也 / @ジュジュ • 名古屋大学4年 • OthloTech運営
• 株式会社キスモ インフラエンジニア 好きな技術 仮想化、コンテナ、DevOps、IaC 趣味 登山、自転車、キャンプ、Kubernetes
競技プログラミングって何?
入力から問題で指定された出力を作る プログラムを速く、高精度に記述する競技会
実装するプログラムは十分に高速で、 大きいメモリを利用しないということが求められる
処理を考える考察力 考えた処理を実現する実装力
競技プログラミングで大事なキーワード アルゴリズム データ構造
アルゴリズムとは 決まった解を求めるために 有限回の試行で終了する手順
Q. これはアルゴリズム? トランプを順に並べる場合を例にすると、次のようになる。 1. 元の山のカードのうち値が1番小さいものを1つ選ぶ。 2. これを別の場所に並べる。 3. 山のカードが無いことを確認する、もし存在するなら1から3ま での手順を繰り返す。
Q. これはアルゴリズム? トランプを順に並べる場合を例にすると、次のようになる。 1. トランプ52枚の束を放り投げて、ばらばらにする。 2. 1枚ずつ無作為にすべてを拾い集める。 3. ソートされているか確認する。もしソート済みでなければ、1か ら3までの手順を繰り返す。
データ構造とは コンピュータプログラムで データを扱うための形式
データ構造とは なんかいろいろある。 けど割愛。 とりあえず今日は多分配列くらいしか 使わない気がする。 キーワード:リスト、連想配列、集合、木、グラフ
それではとりあえずやってみよう。 答えは最後に解説するよ! 5分考えて何もでなかったら聞いてください! 問題 : AtCoder Beginners Selection