suta精進記

競プロ関連体験記や精進記録などを書きます

ICPC国内予選2021参加記

負の感情がこもったポエム多めです。ご注意ください

チームUHISHIROでshiro, kiyoshi, sutaのチームで出場しました。UHISHIROとしては2年目になります。

コンテスト前

今年はUHISHIRO最後ということもあってか、数ヶ月前からかなり気合が入っていて、夢中でAOJ-ICPCを埋めていました。

チーム練の感じもまあまあといった感じで、模擬国内でもそれなりの順位がとれました
模擬国内参加記

コンテスト当日

早めに大学に着いたものの、学内の久しぶりに会う人たちとも挨拶していたら16時半前になったので、呼吸を整えて開始に備えていました。

コンテスト

問題ページを開くと昨年に引き続き、問題ページが開かない→開けたと思ったらリハの問題が出てくる があってまたか~~~と言っていたら1分後くらいに問題が表示されてスタート。

いつも通りA : shiro, B : suta, C : kiyoshiで読んでいると、kiyoshiがC構文解析だ!というので即BとCの担当をswap。Cを読み始めます。

AとBが爆速で通って暫定5位くらい。調子のいいスタートが切れました。(A : 00:06:10, B : 00:06:56)

ただ、Cがまるで分からず、すぐにkiyoshiにhelpを呼び、Dの読解をshiroがやります。

Dの概要をshiroから聞いたあたりでDが解かれ始めて、これやっぱC難しくてDの方が解けるやつだねという話になり、Dを優先的に考えることにします。
この制約だからたぶんDPとかなんだろうなーと思いつつ、任意に動かせるとかなり厳しくないか?という話に。降順、昇順どちらにしてもダメで、終わりの2つ全探索とか考えてもまるで上手くいきそうな気がしなくて辛い気持ちになっていました。

そうこう言っているとライバルチーム含めた無限チームがDを解き始めて焦り始めます。するとkiyoshiが突然Cの解法が生えたらしく、どうやら全方位らしい... 気持ちはなんとなく分かりつつもあんまり書ける気がしなかったので実装もkiyoshiにお願いしました。

ここでkiyoshiから、Cの文字列を構文木にしてほしいという依頼があり、sutaが担当することになりました(これが結果的に良くなかった)。D : shiro, Cの全方位 : kiyoshi, Cの構文解析 : sutaの分担で進めました。

順位表で冷えているのを横目にCの構文解析パートでパグらせ、shiroもDで冷え、Cの全方位パートを書き終えたkiyoshiとshiroがDから離れてEに行きます。

やっとの思いで構文解析が終わり、kiyoshiに投げます。勘違い(?)で1WAが生えつつもすぐに気づいてAC。(2:04:30)←え、こんな経ってたの?(記事を書きながら気付く)

Eの解法は割とすぐに生えたらしく、shiroがEの実装、kiyoshiとsutaで炎上しているDの消火をすべく奮闘します。

Eはバグっているらしく、Dも本当に分からず困り果てていました。Dはとりあえずなんとなくの上界を考えたり、嘘っぽいようなそれっぽいコードを投げて、事前にshiroが書いていた愚直コードと照らし合わせてみることに。

色んな嘘を投げましたが、全く通りませんでした。降順にして3つとる→風船回収後また降順にシャッフルが実はok?とか、最後全探索→降順とか、なるべくデカいものとりあえず小さくしてから降順とか... 昇順/降順にこだわったものが多かった気がします。

Eの実装が炎上しているため、kiyoshiがDを離れてEに行きます。検討していくと良い感じにバグが治ったっぽいので提出→WA
Dもまるで分からずお通夜ムードに突入。
~~~
そのままコンテスト終了。本当に無力感が凄かった。ごめん........................................
Eは後で見たらなんと出力変数名が間違っていたらしいです(え)

結果

f:id:suta88:20211105234125p:plain 全体51位学内5位。ここ一番の激冷えを本番でやりました。
惨敗以外の言葉が見つかりません。

コンテスト後

うなだれながらツイッターを見ていました。Eの概要を聞くと、それ昔解いたことあるな~~となり、涙...
Dの解法が流れてきてもっと愕然。
同学年と集まって話をしたり発狂していたりしていました。
弊学のほとんどのチームがDにしっかりアプローチできていて、みんな天才なのを、実感...

解散した後ツバサさんに劔を奢っていただきました。ご馳走様でした。[ここにラーメンの写真]
コンテストの反省をしながら帰宅。電車の中で持て余して詰将棋をひたすらやっていました。

詰将棋でも分からされている図

振り返り・ポエム

コンテスト中の反省としては、まずCの構文解析を僕がやって、shiroがDで冷やしていたというのがまず挙がりました。特にEみたいなのは僕が通すべき問題で、Cのような構文解析はshiroが得意なので、完全に分担を間違えていました。
Cの構文解析のhelpがEの問題概要の伝達直前に入り、2完の焦りもあってCに走ってしまった結果明らかに最適な担当swapができていませんでした。問題概要の伝達なんて何分も掛からないんだから、絶対に聞いてから判断すべきでした。
その後はDの反省ですが、任意に並べ替え可能なんだからそりゃ確かに集合に分けるのは考えるべきだよなといったどうしようもないものにしかなりませんでした。本番中考えもしなかったなあ...
色んな反省点を挙げても、結局Dを通さなきゃ通過できない&そのDに対するアプローチが1ミリもできていなかったことで全て無になってしまい、本当にどうすればよかったのという感想しか生まれませんでした。

マジで、これ... 998244353回いいねした(引用失礼します)

元々僕(とたぶんshiroも)はこういった発想一発系が苦手で、kiyoshiがなんとかカバーしてきた面があります。それが今回kiyoshiもハマり、CとEも大変なことになってこのような結果になってしまいました。
ICPCの問題、昔とはだんだん傾向が変わってきているような気がして(writerの層も変わっていそうだし)、ねっとりよりはむしろ(ボーダー付近には)天才問題が置かれがちになっています。AtCoderではボコボコにされながらもICPC系の問題ならなんとかと思っていた矢先にこれで、辛いですね。
Fとかが解けるような実力があればまた話は変わってくるんでしょうが、1年で劇的に強くなるほどのポテンシャルが僕にはなさそうなので...というのが正直なところです。(この1年でだいぶ証明されてしまったところが...?)

なんかもうここらへんから感情駄々洩れになります。

発想一発天才問題にはもう何度もやられていて、それは重々分かっているんですが、全然解けるようにならないのが現状です。例えば不変量があるんじゃないかとか考えてみても、累積和とか個数とかxorとか試してダメだったらもう何も分からない。引き出しが少ないのかなとも思いつつ、考え抜く力が無いのかなという気持ちもあり、何をしたらそういうのに正答できるようになるのかなと日々悩まされ続けています。天才問題に限ってパフォが低いこともままあり、さらに落ち込む要因になりがちです。
パズルやなぞなぞの類も本当に苦手で、やっぱりそもそも(少なくとも)TLの人たちにはそういう部分では叶わないなあと分からされています。

いわゆる"地頭"では周りには勝てないことは知っていて、今まで他人よりも多く精進時間を割いて、パターンマッチを繰り返すことによってなんとか追いついて(?)きました。ICPCでも同じなので、こんなに精進したのにと言う気持ちはかけらもないですが、こういった冷え方をすると無力感に包まれてしまいます。本当にどうすればいいんですかね。
ここ一ヶ月、ARCの天才セットで冷やされ、AGCの天才セットで冷やされ、そしてICPCの天才セットで冷やされました。
立て続けにこういうのが続くとマジで辛いです。いっそこんな思いをするくらいならという気持ちから、競プロは本日をもって引退しま










せん!!!!!!!!!!!!!!!!
絶対に少しでも克服して来年リベンジするので覚悟しておいてください。
来年が現役最後のICPCになるので、悔いのないように頑張っていきたいと思います。

give us, MSBへ

アジア地区予選進出おめでとうございます!昨年のリベンジをしっかり果たされてしまいましたね。3月の本番に向けて頑張ってください。
5hバチャ走る時にはぜひ誘ってください。

チームメイトへ

無力でごめん。情けないぜ、助けてくれ
2年間本当にありがとう。マジで良いチームでした。
海外遠征リベンジできる機会があるといいなあ

UHISHIROについて

今年度をもってkiyoshiが卒業するので、UHISHIROも解散です。shiroとは来年も組もうと思っているので、チームメンバー1人を熱烈募集します。高3の皆さんぜひ弊学へ。(唐突な宣伝)

p.s.
ICPCを理由におろそかになっていた研究が、ヤバい。