takuroooのブログ

勉強したこととか

AtCoder始めました

8月5日からAtCoderを始めた。

atcoder.jp

AtCoderとは

AtCoderとはホームページによると

オンラインで参加できるプログラミングコンテスト(競技プログラミング)のサイトです。リアルタイムのコンテストで競い合ったり、約2000問のコンテストの過去問にいつでも挑戦することが出来ます。

というもので、
ざっくり言うと出題される問題の解をプログラムで書いて、どれだけ早く問題を解けたかで競い合うもの。 調べてみるとプログラミングコンテストというものはAtCoderに限らず様々なものが定期的に開催されているよう。

codeforces.com

www.topcoder.com

csacademy.com

定期的に開催されるコンテストに出場して良いパフォーマンスを出すと自分のレート(レベルみたいなもの)が上がっていく仕組みがあり、現在のレートによって色で自分の実力が表現される。
例えば、レートが0以上400未満だと灰色、400以上800未満だと緑色のように400区切りで色分けされている。何色かがその人のある程度の実力を表しており、みんな上位の色になることがコンテスト参加へのモチベーションになっている。

各色がどの程度の実力なのかはAtCoderの中の人がブログでまとめてくれている。 chokudai.hatenablog.com

AtCoderを始めた理由

自分のレベルって他者と比べてどの辺りなのか興味があったので登録してみた。
まだ始めたばかりなのでなんとも言えないが、まだ一番下の灰色なのでまずは茶色を目指してコンテストに継続して参加していこうと思う。

f:id:takuroooooo:20190819223101p:plain

AtCoder登録してから2週間でやったこと

1.過去問解いた

まずはAtCoder Problemsというサイトを使って過去問解いて経験積むのが効果的という記事を見たのでAtCoder Beginner Contestの過去問(主にAB問題)を180問ほど解いた。 f:id:takuroooooo:20190819224042p:plain

2.コンテスト出た

コンテスト出なきゃレート上がらないので参加できそうなやつは出るようにしている。(解ける問題が少なくて順位が低い...) f:id:takuroooooo:20190819224520p:plain

3.人のコード読んだ

自分が解いた問題に関しては他の人がどんなプログラムを書いたのか読むようにしている。これがとても勉強になる。言語としてこういう書き方できるだという発見があったり、問題の解き方が参考になったりすることが多い。

今後やろうと思っていること

以下のQiitaの記事が参考になりそうなのでこれらを読みつつC問題の過去問を解いていこうと思う。