有一定数量的饼干,两个人吃,一个人每次可以吃1到3个,吃到最后一个的就输,怎样赢

这是一个Nim游戏。可以以“当前剩余饼干数”和“上次对方吃的饼干数”为状态,递推求出每个状态是必胜还是必败。可以参考这些问题(尤其是第一个问题中 @匡世珉 的挖洞法):二人轮流滚动一枚骰子并累积点数和,使点数和超过某一定值者输,是否有必胜策略? - 数学如何在取硬币游戏中必胜?(有关尼姆博弈) - 数学双人回合制智力竞技游戏是否都存在先手优势? - 围棋三堆数量随机的石头,两个人轮流从其中一堆中拿走任意数量的石头,拿走最后一块的人输,必胜法是什么? - 数学
■网友
@王赟 Maigo 给的思路是对的,这是一种由后向前后推的策略(在这个场景中使用递归来向前推理)以下内容来自我的博客 证明的方法与策略然而有时候我们无法从正向思路上来找到从起点到终点的路径,例如我们要证明 有一定数量的饼干,两个人吃,一个人每次可以吃1到3个,吃到最后一个的就输,怎样赢
, 我们无法找到从已知条件入手直接得到 有一定数量的饼干,两个人吃,一个人每次可以吃1到3个,吃到最后一个的就输,怎样赢
, 导致无法开启下一步,这个时候我们需要考虑 后推,作为一种从结论入手的方式来启发我们寻找合适的 有一定数量的饼干,两个人吃,一个人每次可以吃1到3个,吃到最后一个的就输,怎样赢
, 在知道 有一定数量的饼干,两个人吃,一个人每次可以吃1到3个,吃到最后一个的就输,怎样赢
之后再顺向推理。考虑下面这个问题:
假定 P1,P2 玩游戏,轮流从 15 个石头中每次取 1,2,3 块石头,取到最后一块石头赢得游戏。证明:无论 P2 怎么取,第一个开始游戏的 P1 能找到方法胜利。直接顺向考虑是很难证明的,考虑从最后一步后推:
假设剩下 1,2,3 块石头,P1 能获胜,因而 P1 保证最后剩下 4 块石头给 P2 即可胜利假设剩下 5,6,7 块石头,P1 能获胜(由第 1 步),因而 P1 保证最后剩下 8 块石头给 P2 即可胜利假设剩下 9,10,11 块石头,同样的道理 P1 保证最后剩下 12 块石头给 P2 即可胜利P1 第一次取 3 块石头只需要 P1 采取每次保证给 P2 留下 有一定数量的饼干,两个人吃,一个人每次可以吃1到3个,吃到最后一个的就输,怎样赢
(在这个游戏中 有一定数量的饼干,两个人吃,一个人每次可以吃1到3个,吃到最后一个的就输,怎样赢
)块石头的策略就剩获得胜利,即先手必胜的策略存在,因而原命题为真 【有一定数量的饼干,两个人吃,一个人每次可以吃1到3个,吃到最后一个的就输,怎样赢】 有一定数量的饼干,两个人吃,一个人每次可以吃1到3个,吃到最后一个的就输,怎样赢


    推荐阅读