Misère Nim game
题目
跟 Nim
游戏一样,但是取走最后一个元素的人输。
结论
设 T = + ◯ i = 1 n a i T =\textcircled{ +}_{i=1}^n a_i T=+◯i=1nai
当 a_i
全为 1
时,显然可以根据 n
的奇偶性来判断。
当 a_i
中存在一个 >1
的元素时,则 T>0 <=> 先手必胜
这里先手必胜的含义是:一定可以取剩最后一个 1
,然后让对方取,令对方输游戏。
扩展
若在正常的 Nim
游戏中 ,当 a_i
中存在 >1
的元素时,T>0 <=> 想赢就赢想输就输
因为此时, Nim
和 Misère Nim
中都可以获胜, Misère Nim
中获胜意味着可以取剩最后一个 1
,让对方取,所以 想输就输
。
证明
设 a_i>1
的元素为非平凡元素。
当不存在非平凡元素时,证明显然。
当存在非平凡元素时:
引理 1
若一开始存在非平凡元素 ,那么按照 Nim
游戏的策略,T>0 -> T=0 -> ... -> T>0 -> T=0 -> T>0
一定会存在某一个 T>0
的时刻,非平凡元素只有恰好一个。
引理 1 证明
首先,对于任意 T=0
的状态,如果元素中存在非平凡元素,那么肯定不止一个。因为高位的异或和也为 0
,所以不能单独存在。
从先手开始:
-
若当前非平凡元素只有一个的时候,结论显然。
-
否则,当前非平凡元素个数
>=2
,那么当T>0 -> T=0
时,由于只能操作一个元素,且T=0
的时候,非平凡元素个数>=2 or =0
,故T=0
的时候非平凡元素个数一定是>=2
的。当T=0 -> T>0
时,也只能操作一个元素,故T>0
时非平凡元素个数>=1
,回到先手开始操作。
由于操作序列有限,所以一定会存在某一个 T>0
的时刻,非平凡元素只有恰好一个。
引理 1 证毕。
先手:
如果只存在一个非平凡元素,那么可以根据剩下平凡元素个数的奇偶性,将非平凡元素取完 or
取成平凡元素,那么这样就可以使得其必胜。
否则,先手还是和 Nim
游戏一样,将 T>0
的状态转移到 T=0
的状态。
由于引理 1 ,先手一定会存在某一个 T>0
的时刻,非平凡元素只有恰好一个。
证毕。