解説
結論から言うと,X が 3 の倍数ならば Bob さんが勝ち,そうでなければ Sakky さんが勝ちます.
X が 3 の倍数でないとき,Sakky さんが勝つことを示します.
以下のような戦略を取ることで Sakky さんは必ず勝利することができます.なお,合同式は 3 を法として考えます.
- Sakky さんは X≡1 のとき k=0,X≡2 のとき k=1 を選んで操作を行う.書き換えた後の Y は必ず Y≡0 を満たす.
- Bob さんは Y≡0 から操作を行うことになる.Y=0 ならば Bob さんの負けである.
Y>0 のとき,どのように操作をしても書き換えた後の Y は Y≡0 を満たす.
- Sakky さんは Y≡0 から操作を行うことになる.最初と同様,Y≡1 のとき k=0,Y≡2 のとき k=1 を選んで操作を行う.
- 以下同様
すなわち,上記の戦略によって,Sakky さんは必ず Y≡0 から操作を始め Bob さんは必ず Y≡0 から操作を始めることになります.
敗北するのは Y=0 から自分の操作を始めるときであり,これは必ず Bob さんの手番に回ってくることになります.
したがって,Sakky さんは必ず勝利することができます.
逆に X が 3 の倍数のときは,同じ戦略を Bob さんにやり返されてしまうため Sakky さんは負けることになります.
コンテスト中に証明まで思いつくのは難しいですが,X の値が小さい時の結果を(Grundy数の計算やシミュレーションによって)列挙することで答えを閃くことは可能です.