2022年12月23日金曜日

Codeforces Round #834 (Div. 3)

 Eまで五完。


F. All Possible Digits

 自力AC。

 少なくとも、p以内に答えが見つかる(1の位が一周するので)。今までに使った数字を範囲の形で持てば、全ての数字を使っているかをチェックすることはできる。
 ケアすべきは、「最初」「1の位が使われていない最大値に到達したとき」「繰り上がったとき」「繰り上がった後、1の位が使われていない最大値に到達したとき」。これらを実装すれば良い。

 コンテスト中は、パッと見て桁DPとか思って飛ばした記憶があるのだけど。全然違った。

G. Restore the Permutation

 自力AC。

 「小さい数字をできるだけ前に置く」という方針で考えたくなるがそれだと上手くいかず(この方針でも可能だと思うけど、実装の仕方が分からなかった)、「大きい数字をできるだけ後ろに置く」という方針を取ると簡単だった。

 小さい方から考えて上手くいかないなら大きい方からも考えてみよう、と思わなくてはいけませんね。

0 件のコメント:

コメントを投稿