競技プログラミング用 知識集積所

ABC422D - Least Unbalanced

最終更新:

sport_programming

- view
管理者のみ編集可


問題


必要知識

B以下レベルの内容は省略

考え方

終状態が限られているので、バックトレースが有効。

例えば
3 10
という入力で考えてみる。

終状態は
10
という状況鹿ありえない。

その直前は
5 5
であると予想される。

その直前は
2 3 2 3
とか
2 3 3 2
のようなもの。

そして始状態は
1 1 1 2 1 1 1 2
といった感じである。

このような遡り方をすれば、絶対にアンバランスさが1以下にできることがわかる。
そして、この過程のどこかで奇数が発生した場合、アンバランスさを0には絶対にできない。

したがって、奇数が発生するかどうかをチェックしながらこの過程をコードにすればよい。

解答例


注意点


別解

ウィキ募集バナー