ACM 国際大学対抗プログラミングコンテスト

国内一位でした。

サッカーや卓球の試合はよくテレビでやってますが、プログラミングの大会ってのはどんな風にやるんでしょうね。見たことないでしょ?興味があれば
http://ccserv.adm.ehime-u.ac.jp/ICPC/jp/
愛媛大学のページにダイジェストムービー約7分が載っているんで見てみましょう。





大会後提出を求められた報告文の下書き。清書では削除した部分、清書で削除される予定で書いた部分も含みます。世界進出決定直後の興奮が生々しいので。
なお、英訳する予定で書いたため直訳調になってます。


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

team combat メンバー、Nushio:

予選を5位ぐらいで通った。
それ以来練習はしていたが今ひとつ足並みもそろわず
強化合宿でもそこそこの成績だったので
まさか世界にいけるとは思っていなかった。

一ヶ月前からオンラインでXPなどの練習をしていた。
準備はめんどくさかったので、書類提出など中々せず、コーチをはじめ
皆さんに迷惑をかけてしまいすまなかった。
大会直前の週末に二日ほど適当にライブラリを書いた。

試合が始まった。

0.前日TrialUseで一位をとったので、その晩のチーム紹介のときに自慢したが
本番でも一位をとるとは思わなかった。
1.問題Aはさほど難しそうではなかったので、いつもどおり問題Aから解き始めた。
問題Aのくせに一筋縄ではいかず混乱したが、ほかのチームもあまり解けて
いなかったので安心した。
2.マニラ大会で優勝していたGokuriをマークしていたので、観察すると問題Aを
解かずにCを解いていたので我々も着手した。これも誤解しかけたものの解けて
みるとAより簡単なくらいだった。
3.このころまでに全問題に目を通していたが、A-EとF-Iで難易度が分かれている
ようなのでA-Eは押さえたいと思った。E問題が簡単そうなので着手した。E問題は
探索問題で、コストが問題になりそうだったが、両側から探索することで
コストを平方根にでき、楽勝だった。
4.B問題はゲームの必勝法探索だと思っていたが、単にゲームをシミュレートする
だけと気づいたので、非常に簡単だった。
5.それからDに取り掛かろうとしたが、条件が煩雑だったので、類題を解いた
ことがあるH問題を解き始めた。コーディングは長かったがスムースにゆき、
正解した。この時点で日本チームのひとつと風船の数が同じで焦ったが、向こうは
A-Eを解いているのに対しこちらは難しいH問題を解いているので有利だと
思っていた。
6.D問題に取り掛かった。どうしても抑えておきたかった。Wrong Answerを
食らい、理由がわからず焦ったが、注意深くバグを探し正解した。
7.残り一時間だったので、速く解けそうなGを選んだ。地図情報から隣接関係の
グラフを得るルーチンは滞りなくできたが、それを効率よく塗り分ける方法が
思いつかなかった。残り時間が少なかったので力技で解くコードを書いてSubmit
したら制限時間が来た。そうしたら試合が終わってからYesが来たので非常に
うれしかった。3人で喜んだ。combatは世界進出を決めた。プログラミングを
やっていて本当によかったと思った。


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%


この日のHideyukiは最高に冴えていて、最高にバギーだった。pair
と書くところをvectorと普通に書いてるのを見たときには
驚きでつっこむのを忘れてしまいそうだった。しかしTypo以上の大きなエラーは
ほとんどなく、タイプ速度がほぼプログラミング速度に一致していたとは
本当にすごい。Hideyukiは確実に練習をつんでいる。
この日のRyotaはXPという彼の任務に関して最高の仕事をした。構文ミスの発見に
かけてはg++の何十倍か優秀だったに違いない。またRyotaは全ての食事シーンに
おいても、立派に彼の役割を果たしていた。


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

一日目泊まったホテルでは映画ターミネーター2をやっていたので練習しつつ
観ていた。流体金属製という設定の新型ターミネーターを観て、風景の映り込みを
どうやって 描画しているのかについて議論した。
世界を決めてから松山市観光に行ったので気分がよかった。しかし荷物を
ホテルに預け忘れていたのでどうにも重たかった。勝利記念に会場から風船を
携えてきていたが、冗談で松の葉にぶつけたら本気で破裂したのでびびった。
記念の風船が割れてしまい残念だった。
パーティー会場は豪華だった。豪華なシャンデリアとかがさがっていたので
ムチで破壊するとハートが出そうだった。
感想を求められた場合英語を喋れる僕が困るので、"我々は勝利した!なぜだ?!"
を頭の中で 訳していたら、壇上に呼ばれても喋らせてくれなかったので残念だった。
文部省の人とかいろんな人に話しかけられた。なるべく落ち着いていたが
やっぱりうれしかった。教育用のコンピューター言語にはHaskellを採用
すべきであるとHideyukiが説いていた。
エクスカーションで砥部焼を見に行った。壺が陳列してあったので"あれは、
いいものだ"と言ってみた。絵付け体験をしたので、λの絵を描いた。λから
世界が誕生する絵を描いた。


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%


大会を援助してくださったスポンサーのみなさま、私たちをここまで育てて
くれた偉大なる先達たち、素晴らしい本の素晴らしい著者たち、私たちの
迷惑を許容してくださり大会を世話し強化合宿を開催してくださったコーチ
の皆様、多くを学ばせていただいた同輩の方々、そして私たちが今使用できる
素敵なプログラミング環境を整えてくれた、過去と現在のすべての偉大な人々に感謝したい。