您的位置:首页 > 产品设计 > UI/UE

LeetCode||52. N-Queens II

2017-11-07 18:17 429 查看
Follow up for N-Queens problem.

Now, instead outputting board configurations, return the total number of distinct solutions.



这题比上一题简化一点,不用拍列出所有的情况,只要给个数字,思路还是回溯
class Solution(object):
def totalNQueens(self, n):
"""
:type n: int
:rtype: int
"""
def isqueens(depth, val):
for i in range(depth):
if board[i] == val or abs(depth-i) == abs(board[i]-val):
return False
return True
def dfs(depth):
if depth == n:
ans.append(0)
return
for i in range(n):
if isqueens(depth, i):
board[depth] = i
dfs(depth+1)
board = [-1 for i in range(n)]
ans = []
dfs(0)
return len(ans)
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  leetcode python