もふふろぐ

by

第一回日本最強プログラマー学生選手権 参加記

9月29日の第一回日本最強プログラマー学生選手権に参加しました。

初のAtCoder株式会社主催コンテストです。 (超人向けコンテストWorld Tour Finalsを除く)

主催の権限は強いそうで、会場の撮影が許可されたり、オープンコンテストが開催されたりするのもすべてAtCoder株式会社のおかげでした。

決勝の枠は200人、イベントのみ参加の枠が300人、合計500人のとても大きなコンテストですが、タイトルの通り学生限定になっています。

予選

第一回日本最強プログラマー学生選手権-予選-

100分200-300-500-600-800-1000のコンテスト。 学生200位は理論上レーティング青となり、通過できるか否かは五分五分と予想していました。 それにもかかわらず、予選日は研究室の合宿のまっただ中で、環境に不安を抱えていました。

結果は4完1600点(99:12)で全体266位。 最終的に全体370位くらいまで通過できたそうで、決勝参加権を無事に得ることができました。 終了の6分前にACしていたD問題がもし解けていなかったら、決勝に参加できなかったようです。

なお、学生201位から500位までの参加者にも、来場し決勝以外のイベントに参加する権利が与えられました。

決勝

会場は汐留の電通ホールです。 カーブしている道路の中ほどに入り口があり、左右から入り口を直接観測できなかったため、会場入りの難易度は特に高かったと思います。

受け付けは11:30に、開会式は12:30に始まります。 そのため、CODE FESTIVALのように軽い昼食が用意されているか、全国統一プログラミング王決定戦のように何も無いかわからず、昼食を食べてから行くか迷いました。 しかし、chokudaiさんが昼食が出ない旨をツイートしたため、事なきを得ました。

丸亀製麺でSuicaが使えなくて焦りました。

全国統一プログラミング王決定戦同様、衣類は配布されませんでした。 コンテストTシャツが希少な存在になってきたと感じます。

間もなく、CODE FESTIVAL感のあるかっこいいBGMとともに開会式が始まりました。 司会のchokudaiさんがとても元気です。

コンテスト

第一回日本最強プログラマー学生選手権決勝

3時間8問の大型コンテスト。 B問題1完で400点(56:44)の167位になりました。 参加者中でのレーティングは121位だったので、順位から苦戦が垣間見えます。

A Equal Weight

制約の最大値の小ささに着目して鳩ノ巣原理を利用する問題。

鳩ノ巣原理に気づきながらも、実装する上でTLEに配慮する必要がないことまでは気づかず、中途半端に乱択をしてWAを連投していました。 ACできず。

B Reachability

頂点x[i], y[i], z[i] (0 <= i < N) からなる有向グラフがあり、頂点x[i]から頂点y[j]へ向かうと、頂点x[i]から頂点z[j]へ向かうパスそれぞれの有無が隣接行列のような形式で入力されるので、頂点y[i]から頂点z[j]へ向かうを構築する問題。

制約N <= 300からO(N^3)を感じながら、3重ループを回して頂点x[i], y[j], z[k]の間に矛盾なく辺を張れるか調べました。

A問題を後回しにする判断が遅かったため、B問題1完の中でも下位になってしまいました( ´ . _ . ` )

セミナー

スポンサー企業の方が事業を紹介していました。 スポンサーに感謝。 えらいので後の休憩時間にスポンサーのブースで企業の方々とお話ししました。

このあたりから、予選201位以降の「イベント参加」の人たちも会場にいました。

表彰式

開会式同様、かっこいいBGMが流れていました。 終始CODE FESTIVALが思い出されて感慨深かったです。 もうCODE FESTIVALは開催されないのでしょうか……

トークセッション

AtCoderのchokudai社長が、宇宙ツイッタラーX氏・ツカモ氏と、業務・採用活動と競プロの関係についてお話ししていました。

休憩

会場の外で1時間以上立って待っていたので、実質懇親会でした。

懇親会

豪華な料理が振舞われました。 会場が広いことに加えて、端から端まであるような長いテーブルで料理が提供されたので、混雑を感じずに楽しめました。 割包がおいしかったです。

冒頭、肩書がすごい来賓の方が紹介され、会場がざわつきました。 京大マイコンクラブ(KMC)の卒業生だそうです。 KMCの方々には日頃からリーグ・オブ・レジェンドでお世話になっております。

感想

楽しいイベントでした。 将来はAtCoderでコンテストを開催できるような収入を得たいと思いました。