【发布时间】:2022-08-04 18:56:17
【问题描述】:
目前,我正在寻找一种递归解决方案来预测两个玩家都处于最佳状态的游戏结果。游戏在两名玩家之间进行。
我得到了一个数组形式的数字序列,并且总是想从一个边缘侧(即数组的开始或结束)绘制一个数字。根据轮到哪个玩家,计入积分,然后轮到下一个玩家。这个玩家现在还选择了一个数字,它位于数字数组的边缘。最后,总和较大的玩家获胜。
在图中,四个起始数字的所有可能的游戏路线都在二叉树中可视化。我现在想知道如何设计一个递归算法,将所有这些可能的组合考虑在内,如果两个玩家都发挥最佳,最后返回获胜玩家的分数。
-
这个问题没有包含足够的细节供其他人提供有用的答案。看看\"How do I ask a good question?\"
-
如果您在谈论nim game,请告诉我,以便我为您提供帮助。
-
有 n(n+1)/2 个游戏状态,您可以使用动态规划来计算每个状态的值。
-
您可能对minimax algorithm 感兴趣。如果你查看一片叶子之前的最后一个分支点,玩家将做出哪个动作相对明显;在相应节点上标记最佳移动的结果。然后对倒数第二个分支点执行此操作;等等