【发布时间】:2016-12-18 15:39:23
【问题描述】:
我想解决类似于 N-Queens 的问题,但是:
- 所有棋子都可用
- 用户输入要放置多少个类型的棋子(例如 3 个车、4 个骑士、1 个主教)
我现在在地板上躺了一段时间,但想不出如何为此目的调整回溯算法。我将非常感谢任何形式的帮助。
【问题讨论】:
标签: backtracking chess n-queens variation
我想解决类似于 N-Queens 的问题,但是:
我现在在地板上躺了一段时间,但想不出如何为此目的调整回溯算法。我将非常感谢任何形式的帮助。
【问题讨论】:
标签: backtracking chess n-queens variation
原则上,应该使用与经典 N-Queen 问题相同的方法:
与经典 N-Queens 问题的唯一区别是不同的部分具有不同的攻击模式。一些常见的优化可能不再起作用。例如,如果你有棋子,它会破坏对称性,因为它们只会攻击它们前面的方格。 (虽然即使有棋子,你仍然有一个对称轴。)
如果您首先放置覆盖最多方格的棋子,我希望回溯算法更有效:首先是皇后,然后是车和象,然后是骑士和国王,最后是棋子。
【讨论】: