不是啊喂,这输出结果都没动过o(╥﹏╥)o

别人的100分
n = int(input())
a = [0] * (n + 1)
book = [0] * (n + 1)
def DFS(step):
if step == n + 1:
for j in range(1, n + 1):
print("%5d"%a[j], end='')
print()
return
for i in range(1, n + 1):
if book[i] == 0:
a[step] = i
book[i] = 1
DFS(step + 1)
book[i] = 0
return
DFS(1)
我的0分o(╥﹏╥)o
def pri(L):
for i in L:
print("{:5d}".format(i), end='')
print()
# 全排列按字典序
def permute(data, i, length):
if i == length:
pri(data)
else:
# Sort the subset of the list we’re permuting
data[i:] = sorted(data[i:])
for j in range(i, length):
# Swap
data[i], data[j] = data[j], data[i]
permute(data, i + 1, length)
# Backtrack, revert the swap
data[i], data[j] = data[j], data[i]
n = int(input())
s = list(range(1, n + 1))
permute(s, 0, len(s))
来个佬救救我o(╥﹏╥)o