ICPCアジア地区横浜大会 2019 参加記

2019/11/16-2019/11/17に行われたICPCアジア地区横浜大会と、2019/11/18の企業見学に参加してきました。チームはAobayama_dropoutで、メンバーは碧黴さん、ゆきのんさん、僕です。

前日

人のライブラリから足りないものをせっせと引っ張ってくる作業をします。

コンテスト1日目(11/16)

ゆきのんさんが新幹線の発車ホームを間違えたらしいですが、車両の窓から僕を見つけて全速力で移動した結果、ギリギリで合流に成功します。スゲー

東京駅でラーメンを食べ、横浜に向かいます。レジってちょっと交流をしたら、practiceが始まります。

ABCD全部チーム練習で見たことありますねえ!Bは碧黴さんとゆきのんさんのどちらかが解いたはずだというと、二人ともそんな記憶はないそうです。どこの平行世界だ?

まあさすがに無なのでAとBが碧黴さんに、Cがゆきのんさんに通されます。Cの実装がかなり速くてスゲー

その間にDを考えていました。解いたことは覚えていても解法を覚えていない……まあ逆辺のグラフを考えたくなるのでその方針で行けそう?適当に実装したらサンプルが合わず真っ青になるが、実はtypoしていただけだった!AC。

全員でお菓子エリアに行き、へのkと喋った後clarとかを一通り確認して、practiceは終了です。

ABCがあるので観光を一切せずホテルへ。AもBも提出順で最短コードを逃しており、涙が止まらない……

コンテスト2日目(11/17)

ABは難易度順らしいので、それを2人が読んで、僕は他のを一通り読むことにします。

コンテスト

Cを読む、よくわからない。Dを読む、飛ばす。

Eを読んでいる最中にAの問題概要が降ってくるので、適当に喋っていると解けます。言語不明瞭をしていると碧黴さんも分かったらしいので、実装を横から眺めるやつをしていると、ゆきのんさんからBの解法が降ってきます。良さそうなので良さそうと言います。AでWAが出たりしましたが、何とかABが通りました。

この間にEFGHを読んでおり、Hが書けそうだったので、パソコンが開いたこともあり急いで取り掛かります。これはよくなかった、考察があやふやで2回もWAを出してしまいました。青息吐息で何とかAC。

残りの問題を読んで、順位表を確認したところ、EとGが解かれています。しばらく考えていると、突然Eの解法が降ってきました。喜び勇んで実装し、AC。

次はGを考えます。対応がとれていない場所を持つようにするとダイクストラで解けることが分かったので実装しAC。この辺りはテンポよく進んで、GをACした瞬間は全体6位でした。おお……?

次に解かれていそうなのはCとIです。Iはとりあえず2重辺連結成分分解をしたくなったので、ライブラリの写経をゆきのんさんにお願いして、さらに考察を進めます。

解法の正当性は全然示せていませんが、まあ書いてから考えるか、ということで実装に移ります。しかし頂点番号をいろいろ振りなおしたりした結果とんでもないことになって、配列外参照で何回もREを出し、TLEも出たりして結局通すことができませんでした。

成績は5完16位でした。

序盤はペナルティ差でかなり下のほうにいましたが、コンテストが終わってみると結局5完の中では2番手でしたから、やはりこの速度が出せるならもう1、2問解く必要があるんだなあとつらい気持ちになりました。

コンテスト後

予選では企業賞が降ってこなかったので、今回こそは……!と祈っていると、なんと!LegalForce様からUS配列のキーボードをいただくことができました!ありがとうございます!

僕はあまり立食形式が好きではないので(床に座り込んで食べればよいという問題ではない)、懇親会ではひたすら企業ブースを回ってノベルティを集めるのに躍起になっていました。

懇親会が終わった後は、疲れた体を引きずって横浜のラウンドワンに行きました。チュウニズムをプレイする人が他にいなかったので1人でずっと同じ譜面に粘着していました。

企業見学(11/18)

最初にしながわ水族館に行きます。

余裕を持ってホテルを出たはずなのに、東京駅でコインロッカーに荷物を預けたりしていると、集合時間に遅れてしまいました。まあ競プロerだしみんな遅刻してくるよね……とチンタラ歩いていたのですが、実は遅刻しているのは僕だけで、全員しながわ水族館の前に立っていました(団体なので全員揃って入場する必要がある)。許して亭ゆるして

そのあと順にHuaweiNECを回りました。正直しながわ水族館が一番楽しかった……

解散となったので秋葉原に行きます。特に予定があったわけではないので、1人でゲーセンに行き、オタクショップを回り、いい感じの時間になったので仙台に帰りました。