Avoid (CEOI 2023 Day2),Grading Server (CEOI 2023 Day1),Parking (CEOI 2022 Day2) というセットを解いた
始め全部の問題に目を通し、C が簡単そうなので考えてみると実際割と簡単だった。1 回の操作で色を揃えられるペアがあればすぐ処理しつつ、空いたスペースを利用してサイクルやパスを処理することになった。1 個のサイクルに 2 個手前の駐車場にいる車があればスペースが 2 個必要という条件を見抜くのが時間がかかった。実装はかなり大変そうだったので確実に 100 点を得るために実装した。(部分点はコスパとして魅力的なものがなかったこととそこそこ結論に自信があったことから全部無視したが、始め 1 列にある車は 0 個 or 2 個はサイクルだけでも確かめられるのでこれをまず通すべきだったかもしれないが、サイクルの処理の中にパスの処理が入ってくるので結局変わらないかな。)
C の満点が 100 分くらいで取れたので A の部分点をとりあえず全部試す。方針としていい感じのものを一定数入れてから適当な乱択をするだけでいいところまで行けるのでは?と思い、実際 4 進数で i 桁目が j であるものを見るロボットを作ってから 30 %(これは (1 - 0.3)^2 が 1/2 に近くなるように)くらいの場所を見るロボットを 100 通り適当に試して「どのロボットに対して見つかるかの集合」の集合のサイズが一番大きくなるものを入れるを全て区別できるようになるまで繰り返した。これだけで 37,38 個くらいの解は作れていたがここから山登りのパラメーターを弄ったり高速化のために実装を色々変えたりしたが結局変わらず 37 個が限界だった。この部分に 2 時間程費やしているのはかなり良くなかった(output only は経験が少なくどれだけかければいいか分からない...)
ロボットの選び方の方針自体を考えた方が良い 2 時間を過ごせたかもしれないが、どうだったのだろうか?
残り 30 分ほどで B の小課題 1,2 を通して終わった。61 - 10 - 100 で 171 点となった。
B の小課題 3,4 はもしかしたら通せたかもしれない。それとは別に、A は方針を考え直せばあと 10,20 点は伸びる余地が残っているように思える。どうするべきだっただろうか...
output only への向き合い方は近年出題がほぼないこともあり(joisc 2022/2023 day 4 - A Last Battle くらいだろうか?)ほぼ対策が取れていなく時間の掛け方がよくわからない。communication と同じ感じでやるのがいいだろうか?