H - 8^kゲーム Editorial by ngtkana


まず \(n \lt 9\) のときには動的計画法などにより \(n = 0, 2, 4, 6\) のときが先手が負ける形(以後、負け型と呼びます。本問では \(\mathtt { Lose }\) と出力する場合です。)であることがわかります。

一般の場合には、

  1. \(n \bmod 9\) が負け型のときには負け型
  2. \(n \bmod 9\) が負け型でないときには負け型でない

ことがわかります。なぜならば \(n \bmod 9\) が負け型ならば先手が何をしても、先手の操作量と後手の操作量が足して \(9\) の倍数になるように操作すること(これは 先手の操作前に \(9 \le n\) であれば必ず遂行できます。)を後手が繰り返すことで \(n \lt 9\) なる負け型にできますし、逆に \(n \bmod 9\) が負け型でないならば、先手の操作により負け型にすることができるからです。

posted:
last update: