题解 | #蛇形矩阵#
蛇形矩阵
http://www.nowcoder.com/practice/649b210ef44446e3b1cd1be6fa4cab5e
Python3解法:跟大神相比是笨方法了,仅自己的心得记录!
(虽然看上去好像数据咋放的很清楚,但实际转化为代码和循环的时候还是会出现很多细节问题,调试了好久才得到正确结果,之后遇到这种数字题可以尝试找找规律)
while True:
try:
n=int(input())
a=[]#初始化结果存储数组
for i in range(n):
a.append([])
s=int(n*(n+1)/2)
num=[]#自然数
for i in range(1,s+1):
num.append(i)
index=0#对应自然数
for k in range(n):#蛇形走位
for r in range(k,-1,-1):
a[r].append(num[index])
index += 1
for i in range(n):#打印输出
for j in a[i]:
print(j, end=(' '))
print()
except:
break