第一,尼姆博奕(Nimm Game)
一,特例分析
有三堆各若干个物品,两个人轮流从某一堆取任意多的物品,规定每次至少取一个,多者不限,最后取光者得胜。
我们用(a,b,c)表示某种局势,首先(0,0,0)显然是奇异局势,无论谁面对奇异局势,都必然失败。
第二种奇异局势是(0,n,n),只要与对手拿走一样多的物品,最后都将导致(0,0,0)。
任何奇异局势(a,b,c)都有a^b^c =0。
如果我们面对的是一个非奇异局势(a,b,c),要如何变为奇异局势呢? 只要将其中一个是
变成其他两个数的异或就行了。
二,例题题目1:今有若干堆火柴,两人依次从中拿取,规定每次只能从一堆中取若干根,可将一堆全取走,但不可不取,
最后取完者为胜,求必胜的方法。
备注: 若所有火柴数异或为0,则该状态被称为利他态,用字母T表示;否则, 为利己态,用S表示。
[定理1]:对于任何一个S态,总能从一堆火柴中取出若干个使之成为T态。
[定理2]:T态,取任何一堆的若干根,都将成为S态。
[定理 3]:S态,只要方法正确,必赢。
[定理4]:T态,只要对方法正确,必败。
题目2:今有若干堆火柴,两人依次从中拿取,规定每次只能从一堆中取若干根,可将一堆全取走,但不可不取,
最后取完者为负,求必胜的方法。
备注:若一堆中仅有1根火柴,则被称为孤单堆。若大于1根,则称为充裕堆。0:没有富裕堆,1:有一个富裕堆 ,
2:有大于等于个富裕堆
[定理1]:T2态必输。[定理2]:S0 即仅有奇数个孤单堆,必败