Series_205 のいろいろ

クソ記事の掃きだめ

JOI 2020/2021 二次予選 参加記

2020/12/13 (日) 13:00 ~ 16:00 に行われた JOI 2020/2021 二次予選に参加したので、明後日の英語の追試という現実から逃避するために世界一内容が薄い参加記を書きます。

第20回日本情報オリンピック

前日

前日は HACK TO THE FUTURE 2021 決勝 に出ていたので、JOI 対策は特にしなかった。(ここ要る?)

当日

コンテスト開始前

確か 9 時くらいに起きた。

そのあとは適当に JOI の過去問を見て、いくつか通したり昼食を食べたりしたら開始時刻になった。

コンテスト中

13:00 A 問題を読んだ。普通に解法がわかったので書いて提出し、AC だった。

13:07 B 問題を読んだ。よくある全部前計算する系のやつだな~と思って std::unordered_map を使って実装した。 手元で動かしたら意外と遅かったのでコードテストに張り付けて再度実行、普通に TLE だった。 文字列を 3 進数に直して提出したら 623 ms で AC が取れた。高速化は大事。

13:25 C 問題を読んだ。町がたくさんあるのかと思って「難しそ~」とか言っていたが、よく読んだら 2 つしかなかった。

13:54 やっと実装が終わったので提出したら RE が出た。 ちょっとコードを眺めてもどこが壊れているのかわからなかったので、ランダムチェッカーを書いたら、配列外参照と無限ループが起きていて泣いた。

14:10 頃 このまま C が通らないとやばいと思い、D 問題を読んだ。楽勝そうだったので C を通してからやることにした。

14:24 C を通せたので、D をもう一度読んで実装をした。二分探索の判定部分が意外と難しく感じた。

14:41 D を提出して、WA だった。よく考えたら二分探索の初期値に不備があったので直し、14:46 に AC した。

14:46 やっと最後の E 問題にたどり着いた。遅いな~と思ったが、別に JOI は早解きと関係ないので救われた。 タブレットをつまみながら考えていたら、「どっちでも良さげな人はスパイじゃない方がいいのでは」という核心に気づいた。ありがとうタブレット

15:37 E を通して全完した。やったぜ

残りの時間は解法ツイートを書いたりおやつを食べたりした。

コンテスト後

解法ツイートをして、得点表に結果を記入、難易度表に投票した。

あとはだらだらしながら解説放送を聞いていた。意外な人が解説で出てきてびっくりするなどした。

まとめ・反省

やはり自分は実装が弱いなと思わされたコンテストだった。特に C 問題はデバッグに 30 分、合計では 1 時間もかけてしまった。実装ってどうやったら強くなるの?(精進を、しなさい)

また、今年は去年と違って小課題がたくさんあったが、全く小課題のことを考えていなかった。本選では部分点をどの段階で取りに行くかとか考えないとな~

まあ、数字ではこれ以上ない結果なので、満足。