TopCoderのSRM(SingleRoundMatch)に参加するまでの導入方法メモ
TopCoderに参加したのだけどその導入が意外と面倒だったのでメモ.
TopCoderとは?
導入
- ここの左のメニューバーにAlgorithmという項目があるのでそれをクリック→Lauch Area→javaアプレットをダウンロードして保存.それを開く.
- TopCoderでは基本的にこのjavaアプレット上で操作を行うことになる.
- とりあえずユーザー登録しないといけないので,下の方ある「Click here to Register」で登録画面に移る.
- 登録する.
- 項目が多くて結構面倒くさい.
- 以前,項目をちゃんと書いてても登録できない不具合とかもあったので注意が必要かも..
- 登録できたらjavaアプレットに戻る.User名とPasswordを入力してログイン.
- とりあえず過去のSRMの問題を眺めてみる.
- 上部バーのPractice Rooms → SRMs → ** - SRM *** DIV * → 部屋移動 → Select oneと書いてあるタブをクリック → 250とか500とかクリック → でSRMの過去問が表示される.
- SRMはSingle Round Matchの略で,TopCoderにおけるコンテストのことを表す.
- SRMxxx でxxxは第何回目のSRMなのかを表す.またSRMには初級者向けの問題セットと中級者以上向けの問題セットの2種類が用意されており,DIV2が初級者向け,DIV1が中級者以上向けとなっている.
- 問題には250,500,1000などの数字が割り当てられており,それぞれ問題を解いたときに得られる得点を表す.数字が大きいほど難しい.
- デフォルトではコーディングの環境が良くないので拡張機能(プラグイン)をインストールする.
- これまた結構面倒くさい.
- ここを参考にして,CodeProcessor+TZTester+FileEditという3つのプラグインを導入する.*1
- プラグイン環境を入れると快適になるが,デフォルトのFileEditの設定が多少良くないので次のように変更するといい.かも.
- ``Backup existing file ...'' の項目にチェックが入っているが,これだと問題を開くたびに過去に書いたコードが消されてしまうので,オフにする.(上書きされなくなる)
- デフォルトではtxtで問題文がアウトプットされるが,たまに問題文に画像が使われていることがあり,txtだと画像が表示されないので,``Write the problem description using HTML''にチェックを入れ,``File extension''をtxtからhtmlにする.
- 実際にコードを書いてコンパイル,テストしてみる
- submitし,System Judgeに通してみる
コンテストに参加してみる
- コンテストの開催は上に述べたように不定期である.
- 開催数時間前になったらSRMにRegisterする.
- 開催5分前になると対戦部屋にEnterできるようになるのでEnterしてみる.
- コンテストのシステムは以下のようになっている.
- Coding Phase(75分)
- コードを書く.全3問.
- 250,500,1000とかが問題.数字が大きいほど難しい.
- 解ければコードをSubmitできる.
- ただ,よくあるオンラインジャッジサイトやICPC本選と違って,SubmitしてすぐにはAcceptedかWrongAnswerか分からない.というか最後まで分からない.
「最後まで結果が分からない気持ち悪さを味わうが良い.」
- Intermission(5分)
- 休憩.
- Challenge Phase(20分)
- System Testing(?分)
- 終了.
レートについて
- SRMの成績に応じてレーティングが付く.
- 灰<緑<青<黄<赤 の順で強い.ちなみに緑以下がDIV2,青以上がDIV1という風に住み分けされているそうです.
- 初参加の人は白になります.
以上.良いTopCoder生活をお楽しみください.(?)
*1:ただしTZTesterはC++のみ対応で,他の言語の場合はExampleBuilderなどを使うと良い…かも.