题解 | #蛇形矩阵#

蛇形矩阵

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

# 读取需要生成的行数
n = int(input())

# Initialize一个空的list来记录rows
matrix = []

# 每行开始的数字
start = 1

# loop循环每个row 计算生成的数字
for i in range(n):
    row = []  # Initialize当前行
    current = start  # 当前行的第一个数字
    for j in range(n - i):  # 每行的元素数量都是少于上一行
        row.append(current)
        current += (i + j + 2)  # 每行当中的数字逐个增长
    start += (i + 1)  # 调整下一行的起始数字
    matrix.append(row)  # 添加新的行到矩阵中

# print最终矩阵,每行中用空格分开数字
for row in matrix:
    print(" ".join(map(str, row)))

全部评论

相关推荐

点赞 评论 收藏
分享
10-30 22:18
已编辑
毛坦厂中学 C++
点赞 评论 收藏
分享
1 收藏 评论
分享
牛客网
牛客企业服务