国内予選
1 位でした。
メンバー
AtCoder レーティングが 3225, 3038, 3024 の東工大史上最強チームです。
事前準備
- Open Cup 関連で定期的に 5h を走っていました。
- WF の経験を踏まえて、対面で 5h を走りました。
- マウス・US キーボード・WF の仮想環境で本番に近い環境を用意しました。
- 1 人 1 台 US キーボードをご用意いただき、2 回 5h を走りました。
- WF のときにかき集めたライブラリを印刷しました。
環境整備
- CLion を使いました。
- IDE を、使おう!
- VSCode は拡張機能が入っていないと予想された (確認はしていません)
- 拡張機能が使えたにしても
launch.json
とかの設定が大変
- 左に順位表、右に CLion を置くことにしました。
- 順位表は 1 分くらいで auto-reload されていたので、新規 AC に気付けるように
- 問題文は順位表上の問題番号から開ける
- 右上のプルダウンで実行するものを選択し debug ボタンで実行ができます。breakpoint も付けられて、実行中の変数の中身を見ることができます。配列外参照などエラーを出したタイミングでも停止して変数の中身を見ることができます。
- サンプルは問題文からコピペします。
初動
- 進捗表を作っておきます。(読んだ人、#solved、ジャンル、考察できたか、予想実装時間、解けたかを書く)
- CLion を開いて C++17 でプロジェクトを作ります。
- DOMJudge にログインして、Win + 矢印で画面構成を作ります。
setxkbmap -option ctrl:nocaps
で caps を ctrl に変更します。CMakeLists.txt
にadd_compile_option(-D_GLIBCXX_DEBUG)
を追加します。main.cpp
にテンプレートを書きます。- A, B が解けていたので、3 行でやめて、
main.cpp
をコピーしてa.cpp
,b.cpp
を作ります。 CMakeLists.txt
にadd_executable(a a.cpp)
add_executable(b b.cpp)
を追加します。- A, B が解けた後、テンプレートの続きを書いて
c.cpp
~k.cpp
を作ります。add_executable
もします。
戦略
- すでに解かれている問題を中心に各自問題を解く。必要に応じてチームメイトと相談する。
- 提出したらすぐに印刷もする
- 詰まったら印刷して交代
- 詰まってそうだったら印刷を促す
- 予想実装時間を報告する
競技
ICPC Asia Yokohama Regional 2022
— tatyam (@tatyam_prime) December 28, 2022
A po
B no
D FFT で 2 次元パターンマッチ いつもの
G no バグらせてた
F no (実装私) 全部奇数の長方形かと思いきや全部偶数もできる
偶数でちょうど半分にする方法が 2 通りあればよい
E no
I - C の累積和とか持って seg[I * 2 - C - P] とかでがんばる
H かなり順位表マジック
— tatyam (@tatyam_prime) December 28, 2022
L, R を無視して a < b < c < d とすると d = X / (abc)
(a, b) は全探索可能, 残りの条件を O(log X) で c の区間にして数える
FA をとりました
K no
I no ハフマン木作って自分以外の多項式を全部掛けて数えてた
J no 大胆予想 : 港は多角形に沿って反時計回りに順に訪れる (実装私)
— tatyam (@tatyam_prime) December 28, 2022
C no 誤読で解けなかったらしい
いや F も順位表マジックに見えるな
G 実装 po
— 熨斗袋 (@noshi91) December 28, 2022
F 考察は ta と共同
K 考察は po と共同で実装は po
結果
速解きでは Time Manipulators に負けていましたがそこまで離されず、0 ペナ vs 6 ペナの差でなんとか優勝することができました。
感想
さすが Time Manipulators 、地頭力も実装力もあり、AtCoder レーティングに差はあれど、彼らの参加率と AGC の開催数が少なくて実力が反映されていないので、実際には互角に近いのではないかという気がします。
F 面白かったですね 私 1 人では解けそうにないかな… (これを 30 分はすごい)
H は答えに足すべきところを引いていて 30 分以上のペナルティです
2.5 時間時点で 1 チーム解いていれば 10 チームくらい解いてそう
ICPC WF 2022+2023 はシャルム・エル・シェイク (エジプト) で開催されるらしいです。
US キーボードはしばらく使い続ける必要がありそうですね…
対面の練習はたぶんやったほうが良いです。環境に慣れておけばバグを減らせるはず。
競技以外
アパホテルに泊まりました。システマチックでよくできてた。大浴場にも行きました。
産賀ホール、URL 見たらさんぼうって読むっぽくてこんなの不可能だろと思ってたらそもそも産貿だった
— みやもり (@_rniya_) December 26, 2022
そんな…
— tatyam (@tatyam_prime) December 26, 2022
— tatyam (@tatyam_prime) December 27, 2022
すごい UF のライブラリが書いてあるな 🤔🤔
— tatyam (@tatyam_prime) December 27, 2022
— tatyam (@tatyam_prime) December 27, 2022
🈁 https://goo.gl/maps/evmrCgpFFwYRFEGX7
明日はこちらのお菓子類を、選手の人数分用意しています。
— ICPC2022JP (@icpcjapan) December 27, 2022
ICPCの朝は早いです。選手の皆様、くれぐれも寝坊などしないようご注意ください。 pic.twitter.com/aw6JZjhpwp
食べ物たくさんもらった