和朋友玩博弈游戏的时候,像象棋,五子棋,总是希望自己的能够掌握什么秘诀,以至于有必胜的信心。然而,很多棋类是人的能力所不能寻求到必胜策略的。象棋,五子棋,黑白棋,斗兽棋,飞行棋,跳棋,……正是这些棋类的复杂性,人们掌握不了其必胜的法则,也使它们得以长久流传。


今天我们来讨论一类精心设计的,有必胜策略的,专门用来坑人的博弈小游戏!这种游戏有的很容易看出破绽,有的却坑人于无形之中。


第一个游戏:20颗石头摆成一排,A,B轮流从当中拿走1~3颗石头(A先拿),直到谁把最后的石头拿走了,则这个人判赢。请问谁会有必胜策略呢?

建议读者尝试自己先玩两盘,相信不久就会得出一些结论!事实上,后拿的人会有必胜策略。我们假定两人都从左往右拿。当第一个人拿i个时,第二个人只需拿4-i个,则两人共拿走4颗。继续维持这种局势,每轮两人都共拿走4颗,则最后一颗必然是后拿的人取走,先拿的人则输了。

扩展:当第一个游戏的石子增加到23颗时,谁有必胜策略?这时,先拿的人只需先将多出的三颗拿走,则自己变成了第一个游戏当中后拿的人,所以该游戏中先拿的人有必胜策略。

总结:N颗石头摆成一排,A,B轮流从当中拿走1~k颗石头(A先拿),直到谁把最后的石头拿走了,则这个人判赢。当N是k+1的倍数时,B有必胜策略。否则,A有必胜策略。


第二个游戏:N颗石头摆成一排,A,B轮流从当中拿走1~k颗石头(A先拿),直到谁把最后的石头拿走了,则这个人判输。

这时谁拿到最后一个石头就输,也即谁将倒数第二个石头拿走就赢了。假设将最后一颗石子拿出,游戏二就转化成了N-1颗石子的游戏一。

总结:当N-1是k+1的倍数时,B有必胜策略。否则,A有必胜策略。这两个游戏随时都能与朋友分享,如用笔在纸上划圈代表捡石头。将捡i个石头看成上i个楼梯,看谁先达到上一层楼。或者无需任何道具,从0开始每人加一个1~3的数,看谁先加过20!


第三个游戏:N颗石头摆成一排,A,B轮流从当中拿走1~2颗石头(A先拿),如果拿2颗,这两颗必须连在一起(注意石子是排成一条线的),直到谁把最后的石头拿走了,则这个人判赢。

A只要根据对称的思想就能轻松获胜。最初,A只要将一排石头从中间断开,分成均等的两份。然后B只要对其中一份操作,A就在另一份中执行相同的操作。这保证了B有石子拿的情况下,A就一定有得拿。所以最后一个石子肯定是A的。

扩展1:将石头围成一圈,假设石头足够多,不会一开始就被A全部拿走,那么A第一次会将圈断开,也即B成了胜利者。

扩展2:我们可以将一排石头换成一个5*5的格子方阵,每个格子里放一块石头,也要求每次拿一个或两个,拿两个则要求相邻,这时A只要占据中心点,然后对称地拿即可!然而,当方阵的边长变为偶数时,问题又变得不同了。试玩玩2*2的方针,会发现B有必胜策略,因为此时方针中不存在孤立的中心点,每个格子都有与之对称的,B只要根据对称思想即可获胜。有兴趣的话还可以扩展到长方形的情况看看!

对于对称思想的运用,主要是使得对手不得不打破对称,而自己则不断维护对称!

我根据第一二个游戏的扩展思路,将游戏三扩展如下,至今还在思考中。


第四个游戏:m*n颗石头摆成m*n的矩型,A,B轮流从当中拿走1~2颗石头(A先拿),如果拿2颗,这两颗必须连在一起(注意石子是排成一个矩型的),直到谁把最后的石头拿走了,则这个人判输。谁有必胜策略?

最重要的问题:P(positive)局面和N(negative)局面!

上面的游戏当中我们可以看出,有必胜策略的一方始终再维护一种具有某些性质的局面。如游戏一种后拿的人始终希望将剩余的石子数变为4的倍数。游戏三中先拿的人始终希望将剩余的石子变得对称!我们称这种具有某些性质的局面为P局面。而不具备这种性质的局面成为N局面。可以看出两种局面的一些性质(以游戏一作说明)。

P局面下的任意操作都将导致N局面。(当从4k颗石子的堆中拿走1~3颗,剩余的石子必不是4的倍数)。

任何N局面都能存存在一种操作将其变为P局面。(只要从4k+i(i=1,2,3)颗石子的堆中拿走i颗,剩余的石子就为4k。)

最终,赢家在一个P局面中获胜了,或者输家在一个N局面中失败了。(0是4的倍数,再最后一次维护中B获胜了)

所以,很多博弈小游戏其实就是找到合适的P,N局面,就能找到必胜策略!像下面将介绍的这个NIM游戏,据说NIM是由单词WIN倒写而来的,有时也将NIM作为上述捡石子游戏的总称!


第五个游戏:有若干堆石子,每堆石子的数量都是有限的,合法的操作是“选择一堆石子并拿走若干颗(不能不拿)”,如果轮到某个人时所有的石子堆都已经被拿空了,则判输(因为他此刻没有任何合法的操作)。

这个问题的P,N局面是很神奇的。我们将会在相关文章中讨论!


转自:http://blog.sina.com.cn/u/1885661061