CF726 D. Deleting Divisors

実験してると、nが奇数だと先手は必ず負ける。

これは、nが奇数で先手が約数pを選ぶとと、n=p^x * q^y * r^z      =>     n-p = p( p^(x-1) * q^y * r^z   -    1 )

n-pは 奇数*偶数 のかたちにかける。

後手は奇数を選べば 奇数(偶数 - 1 )を先手に渡せる。これは奇数。

最終的には先手に素数を渡すことになって、後手勝ち。

 

nが偶数の場合、2^m * p

後手に奇数を渡せば先手勝ちなので、奇数を選んで先手勝ち。

ただし、p=1の場合は奇数の約数がないので偶数を選ぶことになるが、

2^x * p (p != 1) の形で渡すと渡した方は負けになるので、そうならないよう(2^m) / 2

の形で渡すのが最善。これはmの偶奇で勝敗が決まる

 

 

 

Editorialと日本語の落ちてた解説見てやっと理解できた

すごく勉強になった