题目描述
在N*N的棋盘上放置N个皇后(n<=10)而彼此不受攻击(即在棋盘的任一行,任一列和任一对角线上不能放置2个皇后),编程求解所有的摆放方法。
输入
输入:n
输出
每行输出一种方案,每种方案顺序输出皇后所在的列号,每个数占5列。若无方案,则输出no solute!
样例输入 Copy
4
样例输出 Copy
2 4 1 3
3 1 4 2
a = [0] *20 #盒子
n = int(input()) # n张牌 n个盒子
cnt=0
def dfs(step):
global a,cnt,n
#第n+1盒子放牌结束,输出前n个盒子的牌
if step == n+1:
cnt+=1
for i in range(1,n+1):
print("{:>5}".format