h3mky0's blog

主に競プロについて書きます

ICPC2021国内予選 参加記

https://icpc.iisf.or.jp/2021-yokohama/icpc.iisf.or.jp


ICPC2021国内予選に自分(hamray), gomatamagoさん, UさんとSA-naIStというチーム名で参加しました. 結果はAB2完の133位でした.

参加記念であったり, NAISTでのICPCへの取り組みみたいなことを調べる人(自分など)がいるかもしれないのでこの記事を書こうと思います.

ICPC国内予選までにやったこと

  • PGBattleに参加した
    • これも3人1組でチームを組む大学対抗のコンテストですが, それぞれ異なる問題を解くという点がICPCと異なる.
    • 全体50位. チーム全員がミスしていた感じだったので辛い雰囲気だったが, キリ番で賞品を頂いた. ありがとうございます.
  • 模擬国内予選に参加した
    • 全体55位, selectedで36位でギリ国内予選突破圏内.
    • Cの早解きが刺さった感じだったのでかなり油断はできない.
  • チーム内で週2, 3回ほど集まってバーチャルコンテストを開いた
    • 主にICPCの過去問や有志コンの問題など.
  • 個人として,
    • ICPCの過去問を埋めた. (去年の時点で400までは埋めていたので450↑を中心に).
f:id:becnical:20211107190727p:plain
AOJICPC埋め

ICPC国内予選本番の流れ

  • 本番前
    • 話し合ったところAをgomatamagoさん, BをUさん, Cを自分が解くことになった. もしCがヤバかったらBを見るかもしれないという話をした, 今思えばフラグだった.
  • 本番
    • とりあえずCを開く. 木の回転自体は全方位木dpでできると思ったが, 構文解析パートであったり, 入れ替えであったり細かいところをつめるのが面倒そう.
    • gomatamagoさんがAをAC
    • Cを考えていても具体的な実装方針が立たなかったのでCを飛ばしてBに移る.
    • Bは順々に確定していくと良いことが分かる. ただ, 連結判定あたりの言い換えがまとまらず, 良い実装が浮かばなかったのでUさんとgomatamagoさんに投げてDを見る.
    • gomatamagoさんが良さげな実装を思いついたのでデバッグをしてBをAC
    • この時点で1時間20分くらい(本番中はあまり気にしてなかったけどかなり時間が経っていますね...)
    • CDをうろうろするがCが明らかな重実装で, 現時点でDが最も通されていたのでDを考える. 最近フローの問題を解くことが多かったり, ABC143Fに似ていることもあったので色々嘘を生やすが, うまくいかず辛い.
    • 何もできずにコンテスト終了. 残念無念.
  • 反省
    • チームで1つの問題を考えるという練習があまりできていなかったかもしれない.
    • 自分が仕事するべきところでできていない. (本当に申し訳ない)

個人的な感想

今回が4度目のICPC参加でした. ICPCを知って競技プログラミングを始めた人間なので, これまでに比べ国内予選を突破したいという気持ちが強かったですが非常に悔いの残る結果となってしまいました.
ICPCは最後になってしまいましたが, 競技プログラミングは続けます. 今後は, AtCoder黄になることや今後できるようになるかもしれないオンサイトへの参加を目標に頑張りたいと思っています. (学生限定のコンテストが終わっていくのは悲しい)

最後に, チームメンバやコーチ, 運営の方々ありがとうございました。