题解 | #蛇形矩阵#

蛇形矩阵

https://www.nowcoder.com/practice/649b210ef44446e3b1cd1be6fa4cab5e


#思路
#1.先得出第一行
#2.后续的行里面数字都是上一行去掉首个字符后,每个数字-1而得
#需要观察三角形规律



n = int(input())
res = []  #创建一个放所有结果的空列表
a = [1]  #创建第一行

for i in range(1,n):   #第一行规律:后一个数字是前一个数字+i+1;数字个数范围为n
    a.append(a[i-1]+i+1)    #这里要注意 a列表里存储的都是int类型
res.append(a)    #添加入结果列表
# print(res)

for row in range(1,n):    #处理后续行的数字
    line = []    #每次循环新建空列表
    for colum in range(n-row):  #里面数字都是上一行去掉首个字符后,每个数字-1而得;上面已经处理了第一行所以后续行就可以退镀那出来
        num = int(res[row-1][colum+1])-1
        line.append(num) 
#     print(line)
    res.append(line)    #每算完一行则添加进结果列表

#输出部分也搞了很久,主要是用.join不能输出有int的列表,一直报错;查了一下资料,需要使用以下方法
for i in res:
    print(" ".join('%s' %id for id in  i))
    
全部评论

相关推荐

10-28 14:42
门头沟学院 Java
watermelon1124:因为嵌入式炸了
点赞 评论 收藏
分享
耀孝女:就是你排序挂了
点赞 评论 收藏
分享
评论
点赞
收藏
分享
牛客网
牛客企业服务