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
VRC_LT#18_目だけでURLが入った_QRコードを判定しよう!
cleantted
0
12
岩石の話
cleantted
0
94
"命名規則"を決めよう!/Let's Define a "Naming Conventions"
cleantted
0
1.2k
shaderでDDRのパァーノゥを光らせてみた/lighting_ddr_by_shader_in_vrchat
cleantted
0
1.6k
VRChatの中からTwitterとDiscordに メッセージを送れるようにした話 (IFTTT×VRC_Panorama)/Usecase of IFTTT for VRChat
cleantted
0
2.6k
Featured
See All Featured
Designing for Performance
lara
609
69k
Designing for humans not robots
tammielis
253
25k
What's in a price? How to price your products and services
michaelherold
246
12k
Raft: Consensus for Rubyists
vanstee
140
7k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
194
16k
It's Worth the Effort
3n
185
28k
Facilitating Awesome Meetings
lara
54
6.4k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
31
1.3k
How To Stay Up To Date on Web Technology
chriscoyier
790
250k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
30
2.1k
GraphQLの誤解/rethinking-graphql
sonatard
71
11k
Rails Girls Zürich Keynote
gr2m
94
14k
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
競プロ楽しいよ!! みんなもやろう!!