ICPC〜出会い〜

ICPCとは、ACM(計算機科学分野の超有名学会)によって主催される、大学生を対象とした世界規模のプログラミングコンテストです。
同じ大学内の学生3名でチームを組み、できるだけ多くの問題をできるだけ短時間で解くことを競います。
日本で参加する場合は、まず国内予選(インターネット上で行われるので、各大学で教員等に監督をお願いして開催される)に参加します。
ここから成績上位30弱のチームがアジア地区大会に出場、さらにアジア地区大会での成績上位のチームは世界大会に出場できるのです。
詳しくは→ http://icpc2011.ait.kyushu-u.ac.jp/ja/home


…と、まず概要説明から入りましたが、このICPCへの参加は明治大学理工学部情報科学科でも行われております。
ICPCの国内予選が学科のプログラミングコンテストも兼ねていて、学科内での表彰もあるのです。


さて私は二年生の時(2008年度ですね)に必修授業で配られたこのコンテストの案内プリントを見て、
「出るしかねぇ!」
と即決。
だって何もペナルティないし、何より早い内から参加しておいた方がチャンスも多いではないですか。
そして、同じく参加意思のあったM君とチームを組んだのですが、この「3人」というのがなかなか微妙でして…誘おうとした子は「もう○○と××のチームに誘われちゃった」と。
どうしよう……いやでも学年に100人もいるんだ、興味ある人は絶対いるはず!と思い
「誰か出たがってる人いない?」
と聞き込み開始。


そこで知ったのが[twitter:@y42sora]でした。


「あぁ、[twitter:@y42sora]が出たがってたよ。でも一人だって」
「一人!マジか!連絡先教えてもらえるかな!?」
「いいよ、ちょっと本人に確認とってみる」
「ありがとう!」


こんな感じで話が進み、夜にはご本人とやりとりをし、めでたくチームを組むことに。
ちなみに言語をCかC++Javaから選ぶのですが、プログラミング未経験で大学へ入学→一年次の必修授業でC言語を学ぶ→二年次でJavaが始まったところ…だった私とM君は、Cしか選択肢はないと思っていたのですが
[twitter:@y42sora]は「Javaでいこう。入出力楽だから」と言い放ったのでした。
その後メールで三行ほどのコードが送られ、とにかくこれがあればJavaでは入出力ができるらしいとのこと。
そして私はなんと何の練習もせず、本番を迎えるのでした。


この時は確か6チームくらい参加していたと思います。玉木研の院生の方々と、二年生はうちともう1チーム、それから3〜4チームほど先輩の方々。
国内予選では、3時間で6問(今は7問)が出題されました。
結果、解けたのは三問。一問目は[twitter:@y42sora]にやってもらって、二問目は出力に10分以上かけながら私とM君が解いて、三問目は三人で…いやほぼ[twitter:@y42sora]だったかも。


この年は、玉木研の先輩方チームが四問解いてアジア地区大会へ出場しました。
そしてなんと当チームは学内順位が2番だったので、学科のプログラミングコンテストでは表彰(上位3チーム)していただくことになりました。


帰り、二年生同士で「ご飯食べようよ」とガストへ。
(ここで山盛りポテトを数皿頼んだのが、後のプロコン恒例ポテト祭である。)
「いやぁ面白かったね」
「2問目あれ時間かかりすぎでしょw」
「効率悪いwでもとりあえず組んでみるもんだね」
「最後の問題とか何なのあれw解ける人いるの!?」
「上位東大ばっかりだったねー!」
「いやでも練習すればもう一問くらいいけないかなぁー?」
なんて盛り上がりながら、私は「来年も出ようね!」と[twitter:@y42sora]との運命の出会いを掴んで離さなかったのでした。