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
91
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Essence of Competitive Programming
@ジュジュ
June 29, 2018
More Decks by @ジュジュ
See All by @ジュジュ
チーム分割においていかれたアラートをチームで責任を持てる形に再設計した
juju62q
0
210
ボトムアップでSLOを導入 2年半運用して分かった失敗と変化
juju62q
2
1.2k
Firecracker Snapshottingを調べてみた
juju62q
1
650
SLOを活用した技術的改善
juju62q
10
15k
IAM Role for Pods and Instance Meta Data Service
juju62q
1
1.7k
telepresence handson
juju62q
2
5.5k
Wanna Use Vitess in Orientation
juju62q
6
1.4k
machine learning with rancher and K8s on prem
juju62q
5
490
docker-handson-for-researcher
juju62q
3
360
Other Decks in Technology
See All in Technology
AIペネトレーションテスト・ セキュリティ検証「AgenticSec」紹介資料
laysakura
2
9k
猫付きpingコマンドを自作
uyuki234
0
230
Model Studio CLI × Token Plan
maigo999
0
180
サイバー捜査員研修(後半)
nomizone
1
870
モノリス Rails でも日中に rails db:migrate を走らせたい! / Daytime rails db:migrate on Monolithic Rails!
euglena1215
4
580
【Google Cloud Next Tokyo'26】Gemini Enterprise と Oracle AI Database で実現する、業務データ活用を実現する AI エージェント実装
shisyu_gaku
0
250
FPGAが実現する遠方宇宙の高空間分解能天体撮影 -大型地上望遠鏡の視力を補正する「補償光学」とは?-
komei_mt
0
240
ラジオの科学
frievea
0
310
AIエージェントを前提としたプラットフォーム エンジニアリング:GKEで作るAgent-Ready Golden Path
legalontechnologies
PRO
2
240
DatadogのBits Chatが開発組織にもたらしたもの / What Bits Chat Has Brought Us
sms_tech
1
270
え?フロントエンドエンジニアの ワイがインフラも!?
puku0x
1
570
今こそ聞きたいソフトウェア設計 ドメイン駆動設計再入門
masuda220
PRO
17
7.3k
Featured
See All Featured
Marketing Yourself as an Engineer | Alaka | Gurzu
gurzu
0
280
Utilizing Notion as your number one productivity tool
mfonobong
4
540
Getting science done with accelerated Python computing platforms
jacobtomlinson
2
430
Large-scale JavaScript Application Architecture
addyosmani
515
110k
Design in an AI World
tapps
1
280
The Cost Of JavaScript in 2023
addyosmani
55
10k
Facilitating Awesome Meetings
lara
57
7.1k
Building Better People: How to give real-time feedback that sticks.
wjessup
370
20k
What the history of the web can teach us about the future of AI
inesmontani
PRO
1
650
Redefining SEO in the New Era of Traffic Generation
szymonslowik
1
380
Tell your own story through comics
letsgokoyo
1
1k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
34
2.8k
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