Leetcode 52. N-Queens II [Python]

只用统计总组合数,设置p数组,p[i]表示第i行的棋子放在哪个列上,check函数检查,当前行之前的行,是否有已经选择了该列,或者与该列成为对角线。 设置dfs,当走到第n行了,说明找到了一个组合,res += 1.如果不行,则遍历全部列,给当前的第k行,并check,如果可以,则此行找到了,记录到p数组中,并继续dfs找第k+1行该在哪一列。
class Solution:
def totalNQueens(self, n: int) -> int:
p = [-1]*n
self.res = 0

def check(rowk, colj, p):
for prev_row in range(rowk):
if p[prev_row] == colj or abs(p[prev_

Leetcode 52. N-Queens II [Python]最先出现在Python成神之路

版权声明:
作者:Alex
链接:https://www.techfm.club/p/11592.html
来源:TechFM
文章版权归作者所有,未经允许请勿转载。

THE END
分享
二维码
< <上一篇
下一篇>>