自分のSRM振り返り(雑多)

非常に雑多かつ自分用です。

TopCoderというものを知る

2011/05/23
TopCoder部のカレンダーを見ていた。
2011/05/27、
ttp://d.hatena.ne.jp/cou929_la/20091005/1254725798
を見ていた。
2011/06/22 にはTopCoderのArenaをダウンロードしていた。
Practiceをやっていたようである。しかしこの頃は、Practice System Testというものを知らなかったりした。

最初のSRM

2011/10/13、最初のSRM "SRM 521 DIV2" に参加した。
この時のことは記録にもなく、全く覚えていない。
どうしてSRMに参加しようと思ったのかも覚えていない。
結果は、250問題をChallengeされ、簡単な500問題だけ通せた。
このSRMに参加してからはしばらく(5ヶ月間程度)SRMには参加していない。

2回目のSRMから

2012/03/20、2回目のSRM "SRM 538 DIV2" に参加した。
どうしてこの日までSRMのブランクがあったのか、どうしてこの日のSRMに参加したのか、全然覚えていない。
この後、何回か登録ミスをしたりした記憶はあるが、ほぼ毎回参加するようになった。

SRM練習の記録の初出

http://twilog.org/anta_prg/date-120406/allasc
によると、このころSRM練習をしていたことがわかる。
見た問題の表 - antaの競技プログラミング練習日記の最初の日付も2012/04/15だ。

DIV1に

2012/06/16、初めてDIV1になった。
http://community.topcoder.com/stat?c=coder_room_stats&rd=14738&cr=22853544
http://d.hatena.ne.jp/anta0/20120617/1339869918に書いてある。
この回でDIV2の1000問題を解けた。それが非常に嬉しかった。http://twilog.org/anta_prg/date-120617/allascにもツイートがある。
この後すぐにDIV2に戻る。

練習数の増加

見た問題の表 - antaの競技プログラミング練習日記を2012/xで検索してみる。するとそのヒット数=練習数は以下の結果になった。
(SRM以外の練習も含む)

練習数
2012/04 1
2012/05 5
2012/06 21
2012/07 51
2012/08 75
2012/09 111
2012/10 110
2012/11 136
2012/12 146

末期になると、1日に10以上のSRM回のEasy/Medを解いていたりしていた。
これを見ると、2012年はほとんど増加し続けていることがわかる。
また、http://community.topcoder.com/tc?module=MemberProfile&cr=22853544のグラフと合わせてみると、
練習数の増加にともなって、緑→青→黄色へとレーティングも伸びていったことが分かる。
しかし黄色に到達したあと数ヶ月、レーティングは伸び悩み、黄色ボーダー付近を浮き沈みしていた。

Easy,Medium200番まで見た

2012/12/09、SRM Easy,Medium 200番まで見た - antaの競技プログラミング練習日記を書く。
このとき、今まで全くやってこなかったDIV1Hardの200番台を解いていこうと決意した。

DIV1Hardを解いていった

書かれた記事が「SRM DIV1 Hard」の検索結果 - antaの競技プログラミング練習日記で検索できる。
見た問題の表 - antaの競技プログラミング練習日記から数えた表が以下になる。

DIV1Hardの練習数 Hard以外も含めた練習数
2012/12 56 146
2013/01 18 41
2013/02 15 57

全て平均すると1日1問程度のペースではあるが、明らかに、12月は調子がよかったが、それ以降はのろのろとやっていたことがわかる。
ほとんどの問題は自分でコードを書いた(Editorialなどを見てからでも)。また、ブログもきちんと書いて解答のアイデアを整理した。それは良かったと思う。
そして2013/03/01、SRM200〜300のDIV1Hardを見終わった - antaの競技プログラミング練習日記
またhttp://community.topcoder.com/tc?module=MemberProfile&cr=22853544のグラフを見ると、1月ごろからぐんぐん伸びていることがわかる。
これはDIV1Hard練習のおかげであろうと思うことができる。

2013年3月

色々なEasyやMediumを解いていた。
また、http://twilog.org/anta_prg/date-130326にあるように、本番でやった回のEasy/Mediumを全部通したりしていた。

2013年4月

ほとんど練習をしていない。
プログラミングコンテストシステムMinPCを作って、作問を楽しんでいた。
時間のほとんどを作問につかっていた時期もあった。

そしてレッドコーダーへ

2013/05/03、この日のSRMでなんとかレーティングが上がってレッドコーダーになることができた。

SRM練習まとめ

DIV2やブルーの時は、DIV1Easyを主に、DIV1Mediumを解けなくても考え、Editorialを読んで自分のコードを書く練習として解きまくる。
イエローボーダー付近になった後は、DIV1Mediumを主に、DIV1Hardを解けなくても考え、Editorialを読んで自分のコードを書く練習として解きまくる。

この先

SRMからはしばらくは離れたい。他のこともやりたいし。
ただし、レッドコーダーが終着点とは思っていないので、もしその気になったらターゲット目指して頑張りたい。