在给定正整数,经典皇后问题询问是否存在满足以下条件的整数数组:n Q [ 1 .. n ]
- 代表所有
- 对所有
- 对于所有
- 对于所有
每个整数表示女王/王后在棋盘的第行上的位置;约束编码要求没有女王可以攻击其他女王。容易证明当或时没有解,并且对于n的所有其他值,已知闭式解。因此,作为决策问题,n皇后问题完全无关紧要。i n × n n = 2 n = 3 n
对于标准回溯算法构建一个 -queens解决方案推测皇后放置在行的前缀,然后递归地确定是否有在剩余行皇后的法律位置。递归子问题可以形式化如下:
- 给定一个整数和一个整数数组,P是否是描述n皇后问题解决方案的数组Q [1..n]的前缀?
这是更一般的决策问题吗?
几个附近的问题被认为是NP难的,包括拉丁方完成度[ Colbourn 1984 ],数独完成度[ Yato和Seta 2002 ]以及 -queens 的另一泛化[ Martin 2007 ],但是这个特定的问题似乎已经逃脱了任何认真的注意。
相关的cstheory.se问题: