ICPC 2024 Asia Pacific Championship 参加記

今年初開催となるICPC Playoffに京大よりRed Phobiaとして参加しました。

Yokohamaの参加記はこちら↓

ICPC 2023 Yokohama Regional 参加記(RedPhobia yuma220284視点) - yuma220284's dialy

国内予選の参加記はこちら↓

ICPC 2023 国内予選 参加記 - yuma220284's dialy

tatyamさんによるICPCまとめtogetter↓

2024 ICPC Asia Pacific Championship まとめ - Togetter

メンバー

京大理学部の黄色3人チームです。

  • naniwazu(B4,2056) 天才考察が得意 Pythonを使う
  • TKO(B3,2096) 全てのライブラリを持っている
  • yuma220284(B2,2132) ここ3年のRated出場が2回

当日まで

Yokohamaでの結果が全体12位・同校2位だったのでWFを諦めていたが、なんか今年からもう一つRegionalが生えるらしいという話を聞いた。運がいい。

eSIMと変換タップを買った。モバイルバッテリーは持っていかなかったが、かなり充電が厳しかったので持っていくべきだった。

渡航直前にうっかりCelesteという神ゲーをしてしまい寝不足。

Day1(2/29)

初日は夕方にベトナム入りしてその後ホテルに行くだけ。飛行機は通路側の席で、隣にはカップルが座っていたからかなり広々としていた。しかしこのカップルが高頻度でトイレに行っていたので寝ることは出来なかった。

空港内の外貨両替屋で3000円両替した。隣接している両替屋同士で交換レートが違うらしく、客の取り合いをしていて面白かった。

ホテル行のバスが出るまで1時間以上あったので、空港内のバインミー?という食べ物を買って食べた。

ホテルでTシャツや参加景品、そしてコンテスト会場の詳細が配られた。座席の配置を見るとUET(開催大学の略称)の形に添って机が配置されていた(そんなことしていいのか)。うちのチームは'T'の分岐のちょい下の左側だったので開放感がある当たりの席だった。

Day2(3/1)

朝7時にバスが出るので6時起き。朝食を食べに行こうと思ったら部屋のオートロックが機能していないことが発覚。パスポートと財布以外は貴重品を持っていなかったのでまあ大丈夫だけれども。

会場に到着するとまず最初にチーム写真撮影が屋外で行われていた。なんとなく熱帯だと思っていたが、ハノイベトナム北部なので普通に日本と同じくらいの寒さで、Tシャツの下に何も着込んでいなかったのでめちゃくちゃ寒かった。また、この時に企業ブースでぬいぐるみとかを貰った。写真撮影の後は開会式があり、UETの学生っぽい人たちがダンスパフォーマンスで迎えてくれた。

昼食はお弁当が配られた。お米と鶏肉?があり美味しかった。昼食会場の周りにも企業ブースがあり、ルーレットをやってる所があったりモグラ叩きをしている所があったりした。僕はパズルが置いてある企業ブースで海外の人と一緒にむずかしめの天体ショーを解いたりした。

昼食後に全体での写真撮影があり、なんかドローンで撮影していたが、隣にあるグラウンドのネットに引っかかって事故っていた。

 

その後のPracticeは特に何もなく終わったが、夕食会場行きのバスに置いて行かれて1時間くらい待つ羽目になった。夕食はめちゃくちゃ美味しかったからまあ良し(特に刺身)。

Day3(3/2)

8時出発なので7時起き。流石に9時スタートは厳しくないか?と思っていたら当然のように30分延長された。しかもその後10分短縮する謎の演出があり、最終的に20分遅れでコンテストをやることになった。

コンテスト

風船が13色あったのでM問題まであることは分かっていた。[1mod3]問目担当なので5問見ることに。Aはかなりやりたくなく、D,Mは厳しめの数え上げ。Gがぱっと見文字列でJが簡単な最短路問題という感じだった。

naniwazuさんがH,TKOさんがFを解いたっぽい感じだったので、実装待ちの間にLの考察をしていた。解全体がベクトル空間を成すので基底のサイズを特定すれば良くて、偶数長のxorが0になっていることが線形従属であることの必要十分条件だということまで分かった。

そうこうしている間にHが通った(0:31)。Fは定数倍が厳しくTLEという感じだったので、Jを実装してAC(1:10)。その直後にTKOさんがCをAC(1:38)。naniwazuさんがBの制約の特徴に気付いて可能な頂点数と辺数を書き出していた。

TKOさんがFの定数倍を詰めている間に僕がEを考察しAC(2:24)。Gがかなり通されていたが、1≦k≦5の制約の意図が分からず沼っていた。この辺で昼食のバインミーが配られた。

ここから1時間くらいは僕がGとLの考察をしている間にnaniwazuさんとTKOさんがBとFを詰めていた。Bはケース漏れが見つかったが、そのケースに対する実装が重すぎるので終了。Fは操作する数を約数全体から素因数全体に変えることでAC(3:24)。

その後、順位表凍結直前にGの解法が浮かび実装に取り掛かったが、間に合わず29位で凍結。

凍結直後くらいにnaniwazuさんがLの天才エスパーをしていて、実験結果とも合致していたので7完を確信。4:18にGを通し、4:21にLが通って凍結前のKUB1sharpの完数に追いついた。その後はTKOさんがKを実装し、残り二人でライブラリ写経のtypo確認をしていたが、yを求める実装が重すぎて間に合わなかった。

コンテスト後

ベトナム民族博物館に行く予定だったが、かなり時間が押していたらしく、夕食会場の近くの寺院に連れて行ってもらうことになった。移動中に148Towerという建物が目に入り一人でウケていた。

 

寺院から夕食会場までは歩いていくように言われたが、横断歩道のない10車線の道路を無理やり横断しなければならない羽目になった。

夕食会場はめちゃくちゃいいホテルで行われた。式が始まる前にもベトナムの楽器でのライブが行われたが、6曲くらい演奏されて流石に飽きてしまった。

YesNoでは2回のYesによって順位がかなり上がって気持ちよかった。自分より下のチームが銅メダルだったので何か貰えるかもと思ったが、普通に同校制限がかかっていた(それはそう)。KUB1sharpはもう一問通して金メダルを取っており、清々しい位完敗だった。

 

こうしてAPCの閉会式が終了し、夕食の時間になった。この時、surveyで回答したはずの生年月日がなぜか記録されていなかったらしく、何回か呼び出されてしまった。夕食はとても豪勢で、特に魚が美味しかった。

Day4(3/3)

観光パート。ハロン湾という観光地に行くらしい。5時半に出発するので5時起きだった(え?)。朝食は出なかった(え?)。しかもバス発車直前までKUB1sharpが揃っていなかった(え?)。バスの中からは数年振りに日の出を見た。

ハロン湾の船着き場に着くと、まず最初にペットボトルを回収された(先に言ってくれ)。船に乗り込むとまず最初に謎の炭酸抜きジンジャーエールみたいな飲み物を飲まされた。

船の中はバイキングみたいになっていてようやく朝食が食べられるのかと思ったが、朝食ではなく昼食なので12時くらいまで何も食べられないらしい。昼食前にTi Top Islandというところに行き、昼食後にSung Sot Caveというところに行くという説明がされた。

各島には船から小型ボートで往復するという行き方だった。普通に定員以上の人間を船に載せており、椅子もライフジャケットも足りていなかったので転覆したら普通に死ぬ感じだった。

Ti Top Islandはバカでかい岩が一つあるという島で、500段程度の石段を上るとハロン湾を展望できるというスポットだった。頂上ではココナッツジュースが売っていたので飲んだ。美味しかった。

船に戻ると、なにやらドリンクを買うことが出来るらしいという話が耳に入った。同卓の他の9人は皆お酒を買っていたが、二十歳になってから二週間もたってないので普通にコーラを買った。

バイキングは種類が豊富でかなり迷ったが、普通に刺身が美味かった。

バイキングが終わると次はSung Sot Caveに行くことになった。人生初の鍾乳洞でかなり興奮。内部はめちゃくちゃ広くて、でかめの穴とかもあった。

船に戻るとアフターヌーンティーの時間になっており、ロールケーキがとても美味しかった。

こうしてハロン湾ツアーが終了し、あとは空港に行って帰るだけになった。空港に着いたのが19時で飛行機が出るのが25時40分だったのでかなり時間に余裕があった。空港内のお土産屋さんはいくつかあったが、一番でかいところがかなりぼったくっていて笑顔になった。

チェックインを終えた後は空港内で夕食をとることに。ベトナム料理はよく知らなかったが、みんながフォーというものを頼んでいたので同じのを頼んだ。スープが新鮮な味で美味しかった。

空港の保安検査はかなり長蛇の列で、一時間くらいはかかった気がする。金属探知機に2回くらい引っかかってWarshall-Floydかと思った。

帰りも通路側の席だったが、隣の人が離陸直後に酔っていて可哀想だった。

Day5(3/4)

なんやかんや一時間くらいは寝ることが出来て、起きたら朝になっていた。お土産も検疫に引っかからず無事帰ることが出来たと思っていたら、京大メンバーにスマホの忘れものが発生してややバタバタしていた。帰りのはるかは爆睡した。

感想

まず、このコンテストに出場出来て良かった。結果も全体13/65位、国内4/12位なので全力を出し切れたように思う。来年も組めるチームなので、もっと実力を付けて来年こそはWFに行きたい(まずは来年もAPCに出るところからだけれども)。

最後に、誘ってくれたチームメンバー、コーチのmoririnさんとsuibakaさん、全面的なサポートをしてくださった五十嵐・末永研の方々、ICPC運営・現地スタッフの方々、そしてICPCに関わっている全ての方々へ、ありがとうございました。