博弈题先找奇异局势(必输局势)
一、巴什博弈 bash游戏
- 有n个石头,Alice和Bob轮流取石头,每次取的石头不能超过m个,Alice开始取,最后取完的赢,两个人都是以最优的方案取,求最终赢的是谁?
分析: n % (m+1) == 0 时,先手必输,否则必赢。
对于每个m+1循环节,每次先手取完后,后手将剩下的取完。 - 变形:每次取(1, 3, 4)个 ?51nod1067
打表找奇异局势,发现以+2 +5 +2 +5递增 - 变形:每次取2的整数次幂(1, 2, 4, 8 …)? 51nod 1068
打表找奇异局势,发现为3的倍数 - 结论,奇异局势是关键
二、威佐夫博弈
-
有两堆石头,Alice和Bob轮流从某一堆取任意多的石头,或者从两堆中取相同多的石头,每次至少取一个石头, Alice开始取,最后取完的赢,两个人都是以最优的方案取,求最终赢的是谁?
分析:奇异局势:面临的状态必输。(0,0)是一个奇异局势,面临这种状态必输。
奇异局势的三条性质:-
任何一个自然数都包含在一个奇异局势里;
-
任意操作都可将奇异局势变为非奇异局势;
-
采用适当的方法可以将非奇异局势变为奇异局势。
前几个奇异局势有(0,0)、(1,2)、(3,5)、(4,7)、(6,10)、(8,13)、(9,15)、(11,18)、(12,20) …
对于非奇异局势总可以变成奇异局势经过一系列操作
-