TopCoder Open 2013 オンサイト決勝進出

上位 12 人が通過の Round 3A で 5 位を獲得し,TopCoder Open 2013 のアルゴリズム部門のオンサイト決勝進出を決めました.決勝は 11 月に Washington DC で開催されます.

TopCoder Open (TCO) のオンサイト決勝は最も好きなプログラミングコンテストのイベントで,今年も行きたいなあととても強く思っていたので,通過できて本当に嬉しいです.今まで他にも Google Code Jam,ACM-ICPCFacebook Hacker Cup,VKCup 等様々なコンテストで世界大会に出場してきましたが,TCO は特別だと思います.他のコンテストは大抵期間も短くトンボ帰りでその間は拘束されているのに対し,期間が数日間あり,色々なトラックがあり他のトラックを楽しく観戦できる工夫がされていますし,拘束されないので自由に観光に行ったり海やプールで遊んだりもよくしていて,毎回とても楽しく期間を過ごしています.あと,貰えるグッズの数がとても多いのも嬉しいです.例えば去年は T シャツを 6 枚もらったりメカニカルキーボードを貰ったりしました.

マラソン部門では既に 3 人もの日本人参加者が決勝進出を決めていますし,今回 id:ir5 も 2 位で通過しています.アドミンの rng_58 も居ますし,今年も日本人いっぱい居て楽しそうです.まだマラソンもアルゴリズムももう 1 ラウンドずつ残っているので,もっと通過するといいですね.(特に,近年はマラソン通過者の割合が高く,マラソンの日に話し相手がどっと減って寂しいので,アルゴリズム部門でももっと抜けて欲しいです.)


今回で TCO は 2008, 2009, 2011, 2012 に続き 5 回目のオンサイト決勝進出になります.アルゴリズム部門はどうしても問題の運やちょっとしたミスが大きく響くので,なかなか安定して通過するのは難しいと言われており,例えば,ターゲット (レーティング≧3000)ですら毎回半分ぐらいは落ちている気がします.現に今回も,上のスクリーンショットの通り,Petr も ACRush も通過に失敗しています.そんな中で 6 年で 5 回通過しているというのは,実力の割に(といっても TopCoder に関しては最近は身に余るレーティングが付いていてわかりにくいですが……)よく通過しているなあと我ながら感じます.

そこで,僭越ながら自分なりに思う TCO オンサイト進出のコツを書かせてもらうと,TCO オンサイト進出のためには,難しい問題を焦らずじっくり確実に通すことが重要です.過去数年のオンライン最終ラウンドを見ても,そして今回を見ても,2 問通した人は殆ど通過しています.オンライン最終ラウンドは普段の SRM より難易度が高くしかも(なぜか)落としやすい問題が出題されます.さらに,どうしても通過圏内に入りたいという気持ちで攻める人や焦る人がとても多く,結果としてかなりの提出が落ちます.今回も,コーディングフェーズ終了直後の僕の順位は確か 30 位ぐらいでしたが,撃墜での得点なしに,システムテスト後最終的に 5 位になりました.他の人の高い得点の提出に惑わされず,焦らないで確信が持てる解法を選び,きちんと見直しやテストを行って 2 問出せれば,通る確率は高いです.(ただ,2 問解いただけでは通過できない回というのもたまにはあるので,そうなっても僕に文句は言わないでください……)

最近は,昔のような長い時間をプログラミングコンテストに割く生活からは遠く離れていて,「引退」や「世代交代」という言葉もしばしば脳裏をよぎります.実際にもうコンテストをやらなくなった同輩も居ますし,スピードを要するコンテストでは日々問題を解いている若い人たちになかなか思うように勝てなくなってきているのも事実です.しかし,こういう高い難易度での勝負であればまだ戦えるのだというのは,ちょっと嬉しく思います.今や,プログラミングコンテストは趣味の範囲で楽しくやっていければそれで良いと思ってはいますが,とはいえやはり勝つことは大きな喜びです.オンサイトでは今度こそトップ 3 入賞を狙いたいと思います.