输入一个正整数N(N不大于100),输出一个n行的蛇形矩阵。
示例输入:
5
示例输出:
1 3 6 10 15
2 5 9 14
4 8 13
7 12
11
解法一:
while True:
try:
N = int(input())
tmp_begin = 1 # 第一行的数
for i in range(1, N+1):
begin = tmp_begin # 每行的开头
if i == N:
print(begin)
else:
print(begin, end=" ")
for j in range(i+1, N+1):
begin += j
if j == N:
print(begin)
else:
print(begin, end=" ")
tmp_begin += i
except:
break
解法二:
while True:
try:
n, curNum = int(input()), 1
res = [[0 for i in range(n)] for j in range(n)]
for i in range(n):
for j in range(i + 1):
res[i - j][j] = curNum
curNum += 1
for i in res:
print(" ".join(map(str, (filter(lambda i: i != 0, i)))))
except:
break