ICPC に参加してきました.
ICPC Aobayama_BlueMountain で出ます よろしく!
— 財布を持つ (@_ripity) 2025年7月4日
チーム紹介
- nonon
- 考察ができる
- 数え上げができる
- aqua
- 序盤の読解や考察など
- ripity
- おれ
- うさぎを担当
- kotatsugame
- こたつがめさんコーチありがとう
参考文献:
練習
Regional を見据えて Regional と同じ(?)キーボードを使って練習していた.普段 JIS の浅いキーボード使っている身としては,US の深いキーボードはかなり使いづらかった.でも最近は慣れてきたので OK.
模擬国内
C までは自分が実装・考察を担当.
D を読むと昔作った問題が書いてあり,横転しながら実装していた.4 完時点で 13 分だったのでメチャクチャ順調だった.
.....はずが E ですべてが一転.実装も考察もあっていたのに main 関数に return true; を書いてしまい RE を連発してしまった.しかもローカルだと正常に動くから 1 時間近く気づけなかった.なにこれ.
残り時間は 3 人で H をやっていた.c が素数の場合は簡単で,合成数でも構築できるやつがたまにある.nonon がよさげな方針を思いついていたが実装は間に合わなかった.
結果は 5 完 (184)で 36 位(ゲストを除くと 24 位)で,E の炎上がかなり痛かったなあ,という感じに.
当日は会場に Dispersion さんが来ていて H の解説だったり小話だったりを聞いていた.
国内予選
必勝祈願 https://t.co/YcEgERI42U pic.twitter.com/XHR2a3Okm8
— nonon (@nonon_kyopro) 2025年7月4日
去年のこたつがめ祈願は A4 の幅ギリギリまで拡大したが、今年は目分量で 2.5 倍に拡大した
— 財布を持つ (@_ripity) 2025年7月4日
コンテスト開始まではプリンターの確認(こたつがめさんの印刷等)をしたり,場所決めをしたり,ルービックキューブを回すのを見たりしていた.サイトによって回し方のクセがあるらしい(知見).
今年の流れは AB が自分,CD が aqua さん考察→ripity 実装,E 以降は考察だれか→主に ripity 実装,みたいにやろうとなっていた.
A はよい.2 重ループを回すだけ.今思い返すと n の制約を見ていなかった気がするな......
B もよい.ずらし方を 1 から n まで試せば十分.うまい実装が思いつかず,3 分くらいかけてしまったのは良くない.
C は少し手間取った.5 * floor(m / 7) + min(5, (m mod 7)) で平日の個数が求まるから,そこから祝日を引けばよい.土日でない祝日は (a_i mod m) < 5 で判定できる.重複する値や m を超過する値に最初気づかず,かなり時間をロスしてしまった.
D も難しかった.aqua さんから run-length で候補を絞れる旨を聞き,実装をしてみるが WA.どうやら (白白黒黒,黒黒黒白)みたいなケースは有効な run-length が存在しないのでうまく判定できていない.nonon から 2x2 の領域に含まれる白黒がいずれも偶数が必要だと言われ,条件を追加すると AC.
E は考察が面白かった.終了時間が早い辺から選んでよく,両端の頂点を始点とした最短経路を復元する問題になる.自分の実装が破滅しまくって 1 時間以上クネクネしていた.
F は考察も実装も nonon に任せた.問題は面白そう.
その後は aqua さんが G,自分と nonon で H を考えていた.H は各 L (R) が L (R) の塊に到達できるかを判定すれば良く,これは自分が塊にいるか,run-length が 1, 1, ..., 1 であるような区間の両端を見るかを考えればよい.あとは到達できない L, R を含む LR...LR のような区間について数えれば答えが求まる.終了 10 分前くらいに実装が軽めの方針を思いついたが,さすがに実装を奪取する判断までには至らなかった.
今年のセットは構文解析が無かったり,実装が軽かったりと,例年とは趣向が変わっていると感じた.と思ったけど去年も構文解析は無かったらしい.そんな......
結果は 6 完 (297) で 42 位.たぶん Yokohama Regional に進出できている,はず.同校の Aobayama_Marines に 2 完差も付けられてしまって悔しいねえ.
実装のスピード・分担は当面の課題になりそう.できることなら早い段階から考察に混ざりたいし.とりあえず Regional に向けて練習を頑張っていきたい.
あとがき
リージョナルまで地球頑張って