ToB企服应用市场:ToB评测及商务社交产业平台
标题:
力扣 困难 52.N皇后II
[打印本页]
作者:
曂沅仴駦
时间:
2024-10-23 02:38
标题:
力扣 困难 52.N皇后II
题目先容
题解
法一:返回51题N皇后List的长度
法二:
class Solution {
private int n, ans;
private boolean[] onPath, diag1, diag2;
public int totalNQueens(int n) {
this.n = n;
onPath = new boolean[n];
diag1 = new boolean[n * 2 - 1];
diag2 = new boolean[n * 2 - 1];
dfs(0);
return ans;
}
private void dfs(int r) {
if (r == n) {
ans++; // 找到一个合法方案
return;
}
for (int c = 0; c < n; c++) {
int rc = r - c + n - 1;
if (!onPath[c] && !diag1[r + c] && !diag2[rc]) {
onPath[c] = diag1[r + c] = diag2[rc] = true;
dfs(r + 1);
onPath[c] = diag1[r + c] = diag2[rc] = false; // 恢复现场
}
}
}
}
复制代码
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
欢迎光临 ToB企服应用市场:ToB评测及商务社交产业平台 (https://dis.qidao123.com/)
Powered by Discuz! X3.4