No.2658 L-R Nim
タグ : / 解いたユーザー数 18
作問者 :



問題文
石の山が 個あり、 番目の山には石が 個あります。
これらの山を使ってAliceとBobがゲームをします。
まずBobが2つの整数 を選び、
番目から 番目までの 個の山を残してそれ以外の山を取り除きます。
その後、残った 個の山を使い、Aliceを先手としてNimで勝敗を決めます。
Nimのルールは以下のとおりです:
-
先手から順に交互に以下の操作を行う
- 操作:石の山を つ選び、そこから 個以上の石を取り除く
- 操作を行えなくなった方が負け、負けなかった方が勝ち
Aliceはこのゲームに勝ちたいので、Bobがどのような を選んでも勝てるように 以下の細工を一度だけすることにしました。
- 整数 を つ選び、 番目の山に以下の二つの操作のいずれかを行う
- 石を 個加える
- 石を 個取り除く
Aliceが必ず勝てる細工の仕方が存在するか判定してください。
制約
- 入力はすべて整数
入力
以下の形式で標準入力から与えられます。出力
存在する場合はYes
を、
そうでない場合はNo
を出力してください。
最後に改行してください。
サンプル
サンプル1
入力
2 1 1 1
出力
Yes
Aliceが 番目の山に石を 個追加すると になります。 Bobが選択する と、そのときにゲームで使う山の石の個数は以下のとおりです。
- のとき・・・山の石の個数
- のとき・・・山の石の個数
- のとき・・・山の石の個数
Yes
です。
サンプル2
入力
7 100 10 10 10 10 10 10 10
出力
No
Aliceがどの山に細工しても、
Bobは石の個数 の二つの山が残るよう を選択することができます。
以降Bobは常に二つの山の石の個数が同じになるよう操作することができ、
勝つことができます。よって答はNo
です。
サンプル3
入力
5 3 3 1 2 3 6
出力
No
サンプル4
入力
5 6 1 5 4 2 2
出力
No
サンプル5
入力
1 2 3
出力
Yes
提出するには、Twitter 、GitHub、 Googleもしくは右上の雲マークをクリックしてアカウントを作成してください。