题目描述:有一堆石子,每次可以从中取(1,3,4)个石子,两人轮流取,取完最后一颗的获胜。假如n=100,问先手赢还是后手赢?~
解题思路:可以通过由小到大找规律,找出N和P来确定100是必败态还是必胜态。
通过简单的演算过程,可以发现当前石子数m如果可以通过取(1,3,4)中的任何一个,让m-ai变成一个P态,则当前m就是N态,如果不能,则m为P态。通过上边的演算结果,可以发现这是有循环的,并且这个循环可以得出一个规律。如果(n%7==0||n%7==2),则n就是一个P态,也就可以判断先手必胜还是后手必胜了。
(数学系朋友补充)抽屉原理可以证明a/b必然出现循环,最多是在第十一位的位置。同时也可以证明这种取法也必然出现循环。