题目描述
蛇形矩阵是由1开始的自然数依次排列成的一个矩阵上三角形。
例如,当输入5时,应该输出的三角形为:
1 3 6 10 15
2 5 9 14
4 8 13
7 12
11
请注意本题含有多组样例输入。
输入描述:
输入正整数N(N不大于100)
输出描述:
输出一个N行的蛇形矩阵。
示例1
输入
4
输出
1 3 6 10
2 5 9
4 8
7
实现代码如下:
def func():
while True:
try:
n = int(input())
lists = list(range(1,n+1))
num = len(lists)
results = []
for i in range(num):
if i == 0:
results = [(j+2)*(j+1)//2 for j in range(num)]
else:
results = [j-1 for j in results[1:]]
print(" ".join(list(map(str,results))))
except Exception as e:
#print(e)
break
if __name__ == '__main__':
func()