atcoder#ABC296E. [ABC296E] Transition Game
[ABC296E] Transition Game
配点 : 点
問題文
長さ の数列 が与えられます。ここで、各 は をみたします。
高橋君と青木君が 回ゲームを行います。 回目のゲームは次のようにして行われます。
- 青木君が正整数 を指定する。
- 青木君の指定した を聞いた後、高橋君は 以上 以下の整数 を選び、黒板に書く。
- その後、 回次の操作を繰り返す。
- 黒板に が書かれているとき、それを消し、 を新しく書く。
回の操作の後で黒板に書かれている整数が ならば 回目のゲームは高橋君の勝ち、そうでないならば青木君の勝ちとなります。 ここで、 は に対して独立に選ぶ事ができます。
両者が、自身が勝つために最善の行動をとったとき、 回のゲームのうち高橋君が勝つ回数を求めてください。
制約
- 入力はすべて整数
入力
入力は以下の形式で標準入力から与えられる。
出力
両者が最善の行動をとったとき、 回のゲームのうち高橋君が勝つ回数を出力せよ。
3
2 2 3
2
回目のゲームにおいて、青木君が を指定したとき、高橋君は として、 のいずれを選んでも勝つことはできません。
例えば、高橋君が最初に黒板に と書いたとすると、 回の操作で黒板に書かれている数は順に 、 と変化し、 最終的に黒板に書かれている数は であるため、青木君の勝ちとなります。
一方、 回目のゲームにおいては、青木君の指定した の値によらず、高橋君はそれぞれ を最初に黒板に書くことで勝つ事ができます。
よって、両者が、自分が勝つために最善の行動をとったとき、高橋君が勝つゲームは 回目の 回であるため、 を出力します。
2
2 1
2
回目のゲームにおいて、高橋君は、青木君が指定した が奇数のときは 、偶数のときは を最初に黒板に書く事で勝つ事ができます。
同様に 回目のゲームにおいても勝つ方法が存在するため、 回目のゲームのいずれでも高橋君は勝利する事ができ、 が答えとなります。