蛇形矩阵
蛇形矩阵是由1开始的自然数依次排列成的一个矩阵上三角形。
例如,当输入5时,应该输出的三角形为:
1 3 6 10 15
2 5 9 14
4 8 13
7 12
11
思路:
观察第一行的规律符合累加求和公式;(n+1)n/2
第二行的规律则是第一行的 ((n+1)n/2) - 1
第三行的规律则是第一行的 ((n+1)n/2) - 2
第四行的规律则是第一行的 ((n+1)n/2) - 3
当i = 1 时,j = 1,2,3,4 进入循环;
当i = 2 时,j = 2,3,4
当i = 3 时,j = 3,4
当i = 4 时,j = 4
n = int(input().strip())
for i in range(1,n+1) :
for j in range(i,n+1) :
# 输出的公式是转化后的,其实也可以写去括号前,int()的作用是将结果转化成整型,因为计算结果是有小数的,end = ' '作用是将内层循环的计算结果以空格隔开
print(int(((j+j**2)/2)-i+1),end = ' ')
# 一次循环结束后打印空,用作换行
print()

浙公网安备 33010602011771号