NO ENGINEER NO CRY

泣かないエンジニアはいない

ICPC 2019 Asia Yokohama Regional 参加記

11/16-18に開催されたICPC 2019 Asia Yokohama Regionalに参加してきました。



1日目


この日はリハーサルとかチーム紹介とかがありました。
初めてで色々戸惑うことも多かったです(適当)
あとtwitterで有名な人とか強いチームいて「あのチームは予選を×位で勝ち抜いた〇〇……!」みたいな感じでスポーツ系の少年漫画みたいになってました。
リハーサルでは4つの問題が与えられましたが、うち2つはなんか最近見たなーというやつでした。
AでわざとWAを出したり印刷したりしてました。
専用のもろもろがあって凄いなあという気持ちになってました。
チーム紹介はよくわからなかったけどなんだかんだで面白かったです。

プログラムが終わるとすぐに退出を促され、この日はそのまま帰りました。
宿では適当に過去問を解いたりしていました。

2日目

朝早くて辛かった。

コンテスト

開始後、自分はAを読み始めました。初め等比数列の和を使うのかと思ったけどただの貪欲っぽかったです。
えうだーなくんが早く実装できそうだったのでやってもらって、残りの問題を読み始めました。
後ろの問題読んでる間になんやかんやあってはりぼてさんがBを通していました。
順位表見た感じHが解かれてるっぽくて次はHを攻めていきつつEも通して4完を狙おうという感じになりました。
Hはスタックにインプットを突っ込んでいって部分文字列のうち条件を満たすものの数え上げをする的な気持ちのやつでした。はりぼてさんが得意そうだったので最終的にはりぼてさんに投げてEを考えていました。
Eは数え上げで苦手な感じのやつでした。誤読もしました。英語は難しい。
DPっぽいのはそれはそうという感じでしたがうまい遷移が思いつかないというか、諸々の条件をどう保持していればいいのか分からなかった。
次点でGが解かれてそうだったのでこれも考えてました。Gは入力されたバイナリ群を一意複合不可能な場合、そのような組み合わせのうち最小の長さを出力するみたいなやつ。
一意複合可能かどうかのやつは情報理論でやったなーと思ったけど最小の長さ見つけるのが結局よくわからんってなって死にました。制約的にも結構重そうだなあという感じで、でも愚直にやると間に合わないしみたいな。
C,Dは読んでません。Fはよくわからん数え上げで見るからにヤバそうだったのでスルー。Iは純粋に難しそう。Jも見た瞬間ヤバそう。Kはとっつきやすい見た目をしてたけど条件が多くて辛そうという感じでした。
最終的にとりあえずH通したい気持ちになっていったけど結局MLEを解決できず終了しました。

f:id:imln20:20191118204112p:plain

コンテスト後のもろもろ

解説とかが行われましたが英語でよくわからんって感じでした。特に後半は何を言ってるのかわかんねえってなりました。
終了30分前くらいから順位表が凍結されていて、それのジャッジも踏まえた結果発表がありました。
結構順位が変動していて面白かったです。
結局F,J,Kはどのチームも解いていませんでした。Dもどのチームも通せてなかったのですが、最後の最後に1位のチームが通せていてすげーってなってました。

懇親会

企業賞の発表があった後、懇親会が始まりました。
会場には企業ブースができており雰囲気が変わっていました。

適当に食べ物を食べたりジュースを飲んだりしました。
Googleのブースでinput2つとoutput1つだけ書かれた紙が配られていて、「問題文は他の人のテストケースと照らし合わせて予測してください」とのことで、いろんな場所で考察班が生まれていました。答えを聞いてふーんってなりました。

あとは企業ブースも色々まわって色々貰いました。

f:id:imln20:20191118203712j:plain


あと関係ないですが色々サーティフィケイトも貰いました。

f:id:imln20:20191118203940j:plain

懇親会のあとは本学の先輩方が焼き肉に連れて行ってくれました。

ありがとうございました!

3日目

オフィスツアー。
起きたら「このアクセサリは使用できない可能性があります」って出てきてスマホが充電できてなくて最悪の朝でした。
また、十分に頭が良いので駅で電車に乗る時に乗車券の使い方が分からず*1に電車に乗り遅れてしまいました。
結局走ったらギリギリ間に合ったのですが、集合場所に誰もいなくて場所間違えたのかと思って焦りました。受付の人に尋ねてみたのですが「うーん」って感じで何も起きなかったのですが、なんやかんやあって何とかなりました。(遅刻したから先に皆行ってたとかそういうわけじゃないです。マジで)
自分たちのチームは一社目はファーウェイでした。会社紹介や研究事例を聞いてお弁当をいただきました。

f:id:imln20:20191118212042j:plain

色んな研究をやっていて、自分の分野の研究もかなりやっていたようで凄かったです。

2社目はNECでした。
田舎者なので駅からの行き方が難しかったのですが、迷いながらも到着することができました(人生みたいですね)。
写真はないのですがめちゃくちゃ大きかったです。
研究や実務の事例を聞いた後にデモツアー的なやつが行われました。
事例紹介用の空間が複数存在していてすげーってなったのと、事例紹介用のビデオの演出やディスプレイなどがSFっぽくてテンションが上がりました(謎)。

最後は水族館だったのですが、私は水族館には参加せずにそのまま帰宅しました。因みにまだ帰ってきて3時間も経っていません。明日の課題まだやってません。やばい。

感想

初めてのICPCアジアということで色々と楽しかったです。
チームメイト・コーチの皆さんを初めとし、お世話になった皆様、本当にありがとうございました。
本選は悔しい結果となってしまい厳しい世界だなあと言う気持ちもありつつ、一方で、問題も難しかったし、正直まあまあという気持ちもあります。
あと実装重い問題が多めで辛いセットだったなあと感じています。これからは色んなコンテストサイトの問題を解いていこうと思いました。

最初で最後のICPCでこれで引退となるのですが、これからも競プロは頑張っていきたいと思います。しかし実際には研究を頑張らないといけないです。辛い。

*1:新幹線の切符を買うときに「どうせ後日東京まで行くなら東京行きの切符を買えば横浜で途中下車しても、横浜->東京で割引価格になる」みたいな説明を受けたのですが、駅員さんには普通に「使えませんが……」って反応をされて困っていた。