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
最近はじめた競技プログラミングを布教したい話
Search
ktny
December 29, 2019
Programming
2
470
最近はじめた競技プログラミングを布教したい話
最近はじめた競技プログラミングを布教したい話
ktny
December 29, 2019
Tweet
Share
Other Decks in Programming
See All in Programming
Rubyと自由とAIと
yotii23
6
1.9k
責務と認知負荷を整える! 抽象レベルを意識した関心の分離
yahiru
8
1.5k
CSS Linter による Baseline サポートの仕組み
ryo_manba
1
160
PEPCは何を変えようとしていたのか
ken7253
3
310
sappoRo.R #12 初心者セッション
kosugitti
0
280
コードを読んで理解するko build
bells17
1
120
やっと腹落ち「スプリント毎に動くモノをリリースする」〜ゼロから始めるメガバンクグループのアジャイル実践〜
sasakendayo
0
140
「個人開発マネタイズ大全」が教えてくれたこと
bani24884
1
290
5分で理解する SOLID 原則 #phpcon_nagoya
shogogg
1
410
Datadog DBMでなにができる? JDDUG Meetup#7
nealle
0
160
Honoとフロントエンドの 型安全性について
yodaka
7
1.5k
もう僕は OpenAPI を書きたくない
sgash708
6
1.9k
Featured
See All Featured
Done Done
chrislema
182
16k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
32
2.2k
Making Projects Easy
brettharned
116
6k
YesSQL, Process and Tooling at Scale
rocio
172
14k
Why Our Code Smells
bkeepers
PRO
336
57k
Fontdeck: Realign not Redesign
paulrobertlloyd
83
5.4k
For a Future-Friendly Web
brad_frost
176
9.6k
Testing 201, or: Great Expectations
jmmastey
42
7.2k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
666
120k
How to train your dragon (web standard)
notwaldorf
91
5.9k
Site-Speed That Sticks
csswizardry
4
420
Faster Mobile Websites
deanohume
306
31k
Transcript
最近はじめた競技プログラミング を布教したい話 関西フロントエンド 年越し LT忘年会 2019 2019/12/29
自己紹介 高橋克典(たかはしかつのり) 今年の4月に東京から大阪に転職で来ました。 データ分析サービスの部署で主にデータ分析以外のことをやってるエンジニア。 フロント・サーバーを中心にインフラ含めできることは担当しています。 twitter @ktnyori
今年の9月から 競技プログラミング (AtCoder) はじめました
AtCoderを知っている人?
競技プログラミングってなに? プログラミングコンテストで行われる競技の一種。 参加者全員に同一の問題が出題され、より早く与えられた要求を満足するプログラムを正確に記述することを競 う。 引用:WikiPedia
どういう問題が出るの? 有名なところでいうとFizzBuzzのような問題が出ます ~FizzBuzzとは~ • 2人以上のプレイヤーが1から順番に数字を発言していく • 3で割り切れるときは「Fizz」を発言 • 5で割り切れるときは「Buzz」を発言 •
両方で割り切れるときは「 FizzBuzz」を発言 • これをプログラミングで表す
競プロの楽しいところ オンラインで大勢のプレイヤー(全世界)とリアルタイムに勝負できる 勝負の結果によってレベルが上がったり下がったりする 多くの敵(過去問)と戦ってレベル上げができる 他のプレイヤーと交流したり、ライバルとして勝負することもできる
つまり、 競プロ = ネトゲ といっても過言ではない
他にも競プロのいいところはたくさんある 特に作りたいものがなくてもプログラミングを楽しめる アルゴリズム、計算量(ある処理にどれくらい時間がかかるか)に詳しくなれる 言語の標準機能などに詳しくなれる 新しい言語の練習にも使える twitterにはまる(これはよくない面もある)
でも競プロの問題って 難しいんでしょ?
難しい問題もあるしそうじゃない問題もある AtCoderの入門者用コンテストABC(AtCoder Beginner Contest)はA〜Fまでの6問出題される そのうちA~BはFizzBuzzとそう変わらないレベルの難易度 C~はもっと思考が要求されたり、アルゴリズムの考え方が必要になることも その分難しい問題が解けたときは快感!
でも競プロの知識って 実務では使わないんでしょ?
直結はしないけど知っておいた方が絶対にいい 少なくとも計算量的な考え方は実務でも気にしなければならない場面がよくある 実務でも知らず知らずのうちに時間のかかるロジックを組んでしまわないように気をつけられる アルゴリズムを実務で使用することは少ないが知識の幅は広がる 最近は企業もAtCoderの存在を認知しており就職・転職に使えることも
始め方がわからない
実は今はもっとも始めやすい時期です AtCoderの1回のコンテストの参加者が 1年前と比べて約2000人から5000人と2倍以上に増えている 初心者が始めやすいようにいろいろな入門記事やコンテンツも充実している 例:AtCoder に登録したら次にやること ~ これだけ解けば十分闘える!過去問精選 10 問
~https://qiita.com/drken/items/fd4e5e3630d0f5859067 まずはリアルタイムでコンテストに参加して雰囲気をつかめば面白さがわかる
いつやるの?
今日でしょ
今日の20時から 年内最後の AtCoder Beginner Contest
ご清聴ありがとうございました