gpt4 book ai didi

algorithm - 国际象棋 - 在防止检查时避免无限递归

转载 作者:塔克拉玛干 更新时间:2023-11-03 04:39:19 27 4
gpt4 key购买 nike

我有如下算法来防止玩家选择将其置于检查状态的移动:

  1. 假走(通过复制棋盘并在复制的棋盘上工作)
  2. 在走法被伪造之后,得到所有合法的对手走法
  3. 如果合法走法之一可以攻击玩家的国王,则不能选择最初伪造的走法。

但是,在第 2 步(粗体)中,程序必须检查其他玩家所做的任何事情都不会将其他玩家移入检查状态。这创建了一个无限递归,我不确定算法如何避免。人们对这种情况有什么建议?

最佳答案

您可以定义另一个函数,如果玩家的棋子可以移动到对手国王的格子,则返回 true,否则返回 false

现在当你假 Action 时为对手调用这个函数。

关于algorithm - 国际象棋 - 在防止检查时避免无限递归,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47282365/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com