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
競プロの楽しい始め方、 そして競プロをすることによるその効果。/Let's start pro...
Search
cleantted
June 14, 2019
2
1.7k
競プロの楽しい始め方、 そして競プロをすることによるその効果。/Let's start programming contest
cleantted
June 14, 2019
Tweet
Share
More Decks by cleantted
See All by cleantted
岩石の話
cleantted
0
91
"命名規則"を決めよう!/Let's Define a "Naming Conventions"
cleantted
0
1.2k
shaderでDDRのパァーノゥを光らせてみた/lighting_ddr_by_shader_in_vrchat
cleantted
0
1.5k
VRChatの中からTwitterとDiscordに メッセージを送れるようにした話 (IFTTT×VRC_Panorama)/Usecase of IFTTT for VRChat
cleantted
0
2.5k
Featured
See All Featured
Mobile First: as difficult as doing things right
swwweet
223
9.5k
Building Flexible Design Systems
yeseniaperezcruz
328
38k
A Modern Web Designer's Workflow
chriscoyier
693
190k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
248
1.3M
A Tale of Four Properties
chriscoyier
158
23k
The Pragmatic Product Professional
lauravandoore
32
6.4k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
507
140k
Art, The Web, and Tiny UX
lynnandtonic
298
20k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
251
21k
A Philosophy of Restraint
colly
203
16k
Raft: Consensus for Rubyists
vanstee
137
6.8k
VelocityConf: Rendering Performance Case Studies
addyosmani
328
24k
Transcript
競プロの楽しい始め方、 そして競プロをすることによるその 効果。 cleantted (テッド) VRCLT #2
自己紹介 ・cleantted (テッド) ・メガネの色が 最新のcommit hash値な ニコアバターの人 ・趣味: VRC 音ゲー(DDR
etc.) 競プロ ・twitter: @cleantted_s ・Discord: 妹尾/テッド#3519
競技プログラミング (競プロ) # とは
一定の制限の下で、 与えられた問題を解くコードを 早く・正確に書くことで 順位を競うネットゲーム
競技プログラミング #とは 入力例 1: 3 4 5 13 Even Odd
出力例 1: 入力例 2: 出力例 2: たとえば、こんな問題が出ます: 出典:https://atcoder.jp/contests/abs/tasks/abc086_a
競技プログラミング #とは ↑ Pythonでの解答例 こんな感じで問題を解くプログラムを書きます: 提出 その場で 自動的に正誤判定 対応言語(一部:コンテストによる): C++,
Java, C#, Go, Python (2系, 3系), Perl, Ruby, Haskell, Pascal, Javascript (Node.js), Scala, F#
・すべてのテストケースに正解 ・実行時間・メモリの制限内に実行が終わる 制限の例: ⇒ Accepted!! (= 正解) 競技プログラミング
#とは AC: Accepted(= 正解) 正誤はその場で判定されます:
競技プログラミング #とは 点数が高い方が 上位 ACではないと 最終提出時間に ペナルティ 同じ点数なら 最終提出の早い 方が上位
間違えた回数 コンテストの順位を競います: A B C D E
ここがたのしい • アルゴリズムの知識が増える ◦ 例:長さNの配列に、ある要素があるか探す ▪ 線形探索:O(N) ▪ 二分探索:(ソート)+ O(logN)
• N = 100,000 ⇒ logN ≒ 20 ◦ その他テクニック ▪ 貪欲法 ▪ 累積和 ▪ 動的計画法(DP) ▪ などなど……
ここがたのしい • レーティング ◦ コンテストの成績に応じて上下する https://jobs.atcoder.jp/info/recruit https://jobs.atcoder.jp/home
競プロを始めるには? 1. 「AtCoder」に登録しよう! (https://atcoder.jp/) ◦ 日本で開催、初心者が参加しやすい、解説もある 2. チュートリアルをやろう! ◦ 最初の関門:標準入出力
▪ 代表的なものはコード例があるので参考にすると良し ◦ その後は有志がまとめた問題集をやるのが良し ▪ https://atcoder.jp/contests/abs 3. コンテストに参加しよう! ◦ 初心者用のコンテスト(AtCoder Beginner Contest: ABC) に参加するのがおすすめ ▪ 次のABC(130): 6/16 (日) 21:00-22:40
競プロ楽しいよ!! みんなもやろう!!