gyouzasushi’s diary

競プロとか

ICPC2020国内予選に参加しました

チーム紹介

gyouzasushi(僕), ndifix, taizou のチーム「TOYONAKAISER」で出ました。二人とも中学からの友人。こういうのは「仲良い人とやった方が良い!」って麗日お茶子ちゃんも言うてたからね。

結果

f:id:gyouzasushi:20201107051903p:plain
ABCD4完で学内6位でした。4完できたら嬉しいね、みたいな話をしていたので、嬉しい!通過はできませんでしたが、来年も頑張ろう、と思えるぐらいには健闘できたと思うのでよかったです。二人ともありがとう!

僕の家に集合して、2012年の国内予選で最後の練習をしてた。Eの鎖中経路がリハーサルのL問題(確か)にも出てて、半日で二回ACする男になってもうた。

ウーバーイーツで頼んだハンバーグをみんなで食べた。戦いの前の食事はやっぱり肉に限るよ。そのあと僕はたいへん眠たかったので始まるまでお昼寝をすることにした。僕が寝てるあいだ二人はマリオカートしてたらしい。良い雰囲気だ

本番

練習どおり、ndifixがA問題、僕がB問題を解いて、TOYONAKAISER注意力担当のtaizouにC以降を読解していてもらう。AとBの実装がほぼ同じタイミングで終わっていざ提出、というところでWorkspaceに入れなくなって焦る。BANされた?とかひととおり大騒ぎしたけど、taizouが落ち着いていてくれたおかげでギリ冷静でいられた。七年半の付き合いで一番ぐらい尊敬したね、ありがとう…。
Bを提出→AC(2:26)、続けてAもAC(3:45)。
Cがすぐ書けそうでDが構文解析とのことだったので、二人にCを任せてDを考える。とりあえず順序が決まれば構文解析パートはそんなに難しくないな、でも n! 通り全部は調べられないな……と思って途方に暮れてしまう。かなり泣きたい。泣いてるあいだにndifixがCをACしてくれた(42:10)神。
一旦休憩を挟んで落ち着いて考えてみると、こんなん n!2^n に落とすやつしかないやろ、という気持ちになる。順列じゃなくて集合、集合、集合……という気持ちでもう一度考察すると、「X より先に来る文字の集合」を決定すれば「式の値が X になるかどうか」を判定できることに気づいた!!!さすが僕。ここまでわかればあとは X と 各文字が X より先に来るか後に来るかを全部試して適当な係数をかければ答えが得られる。もろたで工藤
実装もそんなに複雑じゃない、はずなのに、サンプルが全然合わない、終わった……と思っていたら、アルファベットを整数に直すところで 'A' ではなく 'a' を引いていた。しかも \neq とするべきところが全部 = になっていて、綺麗に余事象の場合の数が出力されていた。全部直して提出→AC(1:51:44)。考察も実装もかなり時間がかかってしまったけれど、これは実力不足だなあ〜〜。
残り一時間。二人がずっとEを考えてくれていたが、厳しいらしい。順位表をみるとEとFが同じぐらい通されていたのでFも読む。
Eは地道に詰めていけばいつかは解けそうな感じで、Fは何かひらめきさえすれば解けそうな感じ?みたいな話をした。相談の結果、残り時間のことも考えてFに賭けることになった。
Dを通したことでどこか満足してしまった気持ち、Eを諦めきれない気持ち、Fの手がかりが見えずに辛い気持ちのトリプルパンチでなかなか集中できず、競プロがメンタルスポーツであることを実感……。終盤taizouがよさげな解法を持ってきてくれたものの間に合わず、コンテスト終了。

めっちゃ寝た。

さいごに

Asia 遠そうで近そうで遠いなあ。