Chomp!游戏 (组合游戏Combinatorial Games)

http://blog.csdn.net/acdreamers/article/details/17021095

有一个n*m的棋盘,每次可以取走一个方格并拿掉它右边和上面的所有方格。拿到左下角的格子(1,1)者输,如下图是8*3的

棋盘中拿掉(6,2)和(2,3)后的状态。




结论:答案是除了1*1的棋盘,对于其他大小的棋盘,先手总能赢。


分析:有一个很巧妙的证明可以保证先手存在必胜策略,可惜这个证明不是构造性的,也就是说没有给出先手怎么下才能赢。


证明如下:

如果后手能赢,也就是说后手有必胜策略,使得无论先手第一次取哪个石子,后手都能获得最后的胜利。那么现在假设先手

最右上角的石子(n,m),接下来后手通过某种取法使得自己进入必胜的局面。但事实上,先手在第一次取的时候就可以和

后手这次取的一样,进入必胜局面了,与假设矛盾。



巧克力游戏的变形:


约数游戏:有1~n个数字,两个人轮流选择一个数字,并把它和它的约数擦去。擦去最后一个数的人赢,问谁会获胜。


分析:类似巧克力游戏,得到结论就是无论n是几,都是先手必胜。(可假设先手选“1”)。

原文地址:https://www.cnblogs.com/LLGemini/p/3952023.html