321
社区成员




给你一个整数n,输出n∗n的蛇形矩阵。
可以看老顾的文章,https://blog.csdn.net/superwfei/article/details/129024417
然后,今天又搞出一个版本来。
蛇形矩阵相对比较绕,不太好理清思路,但是,文章中所说的菱形总不会没人做不出了把,现在,老顾弄个菱形然后转方形。
用 pop 来生成,这方法总变得容易理解了吧,不用算那么多方向
n = int(input())
dp = []
p = 0
for i in range(1,n * 2):
dp.append([])
for j in range(i if i <= n else 2 * n - i):
p += 1
dp[-1].append(p)
if i % 2 == 0:
dp[-1] = dp[-1][::-1]
for i in range(n):
print(*[dp[v + i].pop() for v in range(n)])