2009年11月18日水曜日

TopCoder イントロダクション

TopCoderの紹介.

■TopCoderって何ですか?
定期的にネット上で開催されるプログラミングコンテスト.世界中の人が集まりコーディングで競います.

TopCoder
http://www.topcoder.com/

沢山の大会がありますが,その中でも特に盛り上がるのがSRM(Single Round Match)です.以下,その詳細をご紹介.

■参加資格
特に無し.ただし,事前にメンバ登録しておく必要があります.詳細は略.

■使用可能言語
Java,C++,C#,VBの4つ.

■競技概要
・参加登録
大会開始3時間前から参加登録が始まります.開始5分前になると,参加者達は,ある程度レベルにばらつきが出るように20人程度のRoomに振り分けられます.
そしてコンテスト開始,以下のような流れで行われます.
・Coding Phase
制限時間75分間で3つの問題を解きます.この75分間でコードを書き,提出しなければなりません.速く提出した方が高得点となります.
・Intermission
5分間休憩.
・Challenge Phase
ここでは,Room内の相手のソースを読み,誤った出力が得られそうな(バグが出そうな)入力を与えてやります(Challenge).ここで見事撃墜(Challenge成功)すると,自分の得点が+50p,相手の得点は0p.逆にChallengeに失敗すると,自分の得点が-25p.
・System Test
提出されたプログラムが「本当に」正しいかを検証するために,主催者側が用意した入出力を用いた「テスト」を行います.このシステムテストに合格すると得点獲得,不合格(正しい出力が得られなかった)になると得点は0p.

大体このような感じです.ちなみに,これら一連の内容はArenaというJavaアプリケーション上で行われます.競技終了後,計算式に従って,各レーティングが更新されます(1p以上だったとしても,現在のレーティングから落ちる可能性がある).

また,現在の得点によって以下のように色が振り分けられます.
2200p以上の「RedCoder」になると崇められます.更に,3000p以上になると「Target」となり,赤丸の中に白丸が入ります.

レーティング
初参加
0~899
900~1199
1200~1499
1500~2199
2200~
3000~Target


是非,挑戦してみて下さい.

0 件のコメント: