def is_safe(board, row, col):
# 检查当前位置是否安全
for i in range(row):
if board[i] == col or abs(i - row) == abs(board[i] - col):
return False
return True
def solve_queen(board, row):
n = len(board)
if row == n:
# 找到一个解
print(board)
else:
for col in range(n):
if is_safe(board, row, col):
board[row] = col
solve_queen(board, row + 1)
n = 8
board = [-1] * n
solve_queen(board, 0)