题解 | #蛇形矩阵#

蛇形矩阵

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

#解题思路:这个矩阵三角斜着看比较方便一点,比如这个三角形
#1 3 6 10 15
#2 5 9 14
#4 8 13
#7 12
#11
#斜着第一行即左下到右上的对角线放一个数1,斜着第二行继续放2,3,一直放到第n行,一共n行

import sys

n = int(input())
num = 1 #表示当前要放入矩阵中的数字
dp = [[0] * n for _ in range(n)]#创建一个方阵

for h in range(n):#h斜着行的下标,h=0也就是第一行
    i = h
    j = 0
    while j <= h: #从[h][0]开始放数然后斜着往上走一直放到[0][h]
        dp[i][j] = num 
        num += 1
        i -= 1
        j += 1

for i in dp:
    for j in i:
        if j != 0:
            print(j, end=' ')
    print()

全部评论

相关推荐

1 收藏 评论
分享
牛客网
牛客企业服务