题目链接:http://acm.ustc.edu.cn/ustcoj/problem.php?id=1213
在做本题之前,虽然听说过NIM游戏,但并不知道其必胜策略,之前遇到的另一个NIM问题是两堆石子的版本,取石子规则又略有不同,在思考两天之后终于解决了,结论非常优美,用到了数学竞赛知识里的Betty定理,结论和黄金分割有关,这里给个POJ百练上的题目链接:http://poj.grids.cn/practice/1067/。在自己解决这两道题之后,决定深入理解一下NIM问题,于是查阅了一些资料,发现已经有很多人探讨过这个问题,看来能想出这个问题的人很多啊,但是还是挺有成就感的,而且发现自己采用的方法与文献上的类似,(对于后一个问题也用了Betty定理证明),因此还是很乐意写篇报告来总结一下自己的心得。(Ps个人认为这种经典的问题一定要自己想出,而且要严格证明出来,不然再遇到也是不一定能很快解决的)。
首先,正如题目中已经给出的结论:我们定义一个NIM数,然后可以通过异或运算直接算出这个数字,非0则存在必胜策略(这里先不给出这个结论的证明,我决定在下一篇文章中给出,因为正是解决那道题目时给我的启发并一并联想到NIM问题,才完成了证明)。我们现在先默认结论正确,我们先专注于这道题目的要求:找出第一步最少需要取走的石子数,使