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
420
最近はじめた競技プログラミングを布教したい話
最近はじめた競技プログラミングを布教したい話
ktny
December 29, 2019
Tweet
Share
Other Decks in Programming
See All in Programming
[技育CAMPアカデミア]アイディアを形に!【超入門】スマホアプリ開発〜リリースまでの流れをご紹介
teamlab
PRO
0
380
1BRC--Nerd Sniping the Java Community
gunnarmorling
0
340
ゆるい個人開発のススメ
kuroppe1819
10
990
VSCodeでのDatabricks開発もお勧めしたい/I would also recommend Databricks development with VSCode.
kazumain
0
260
エンターテイメント業界で利用されるAWS
demuyan
0
210
Ruby GitHub Packages
bkuhlmann
0
630
SIMD Parallel Programming with the Vector API
josepaumard
0
180
Ruby Function Composition
bkuhlmann
1
330
StoreKit2によるiOSのアプリ内課金のリニューアル
kangnux
0
110
雑に思考を整理する技術と効能
konifar
60
29k
MetricKitで予期せぬ終了を検知する話 / Detect unexpected termination with MetricKit
nekowen
1
190
Milestoner
bkuhlmann
1
410
Featured
See All Featured
The Power of CSS Pseudo Elements
geoffreycrofte
60
5k
Debugging Ruby Performance
tmm1
70
11k
Why You Should Never Use an ORM
jnunemaker
PRO
51
8.6k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
40
4.4k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
322
20k
Agile that works and the tools we love
rasmusluckow
325
20k
Happy Clients
brianwarren
92
6.4k
10 Git Anti Patterns You Should be Aware of
lemiorhan
648
58k
Infographics Made Easy
chrislema
238
18k
Unsuck your backbone
ammeep
663
57k
What's in a price? How to price your products and services
michaelherold
237
11k
The Illustrated Children's Guide to Kubernetes
chrisshort
31
46k
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
ご清聴ありがとうございました