编辑代码

def isValid(row, col, queenPos):
    for i in range(row):
        if queenPos[i] == col or queenPos[i] + i == col + row or queenPos[i] - i == col - row:
            return False
    return True

def backtrack(row, queenPos, solutions):
    if row == 8:
        solutions.append(queenPos[:])
        return
    
    for col in range(8):
        if isValid(row, col, queenPos):
            queenPos[row] = col
            backtrack(row + 1, queenPos, solutions)

def solveNQueens():
    queenPos = [-1] * 8
    solutions = []
    backtrack(0, queenPos, solutions)
    
    for solution in solutions:
        print(solution)

solveNQueens()