题解 | #n-皇后#

n-皇后

http://www.nowcoder.com/practice/c77ac599d0764433a5946610a7626768

class Solution:
    def solveNQueens(self, n):
        res = []
        self.queen(res, [0 for _ in range(n)], n)
        return res
    def queen(self, result, board, n, row=0):
        if row >= n:
            plan = []
            for row, col in enumerate(board[::]):
                plan.append("." * col + "Q" + "." * (n - 1 - col))
            result.append(plan)
        else:
            for col in range(n):
                for i in range(row):
                    x, y = i - row, board[i] - col
                    if y == 0 or x == y or x == -y:
                        break
                else:
                    board[row] = col
                    self.queen(result, board, n, row + 1)
全部评论

相关推荐

05-03 12:45
西南大学 Java
nsnzkv:你这项目写的内容太多了,说实话都是在给自己挖坑,就算简历过了,后面面试也难受
点赞 评论 收藏
分享
半解316:内容充实,细节需要修改一下。 1,整体压缩为一页。所有内容顶格。 2,项目描述删除,直接写个人工作量 修改完之后还需要建议,可以私聊
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务