题解 | #蛇形矩阵#

蛇形矩阵

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

真是没那个脑子找公式,就先确定每一行行首,然后后面的元素分别基于该行的上一个元素处理,笨蛋方法

规律:下一个元素等于这一行的上一个元素值 + 当前行数 + 现在是本行第几个元素 - 1

n = int(input())

# 先搞一个首行元素,然后后面的每一行再处理
line_1 = []
first = 1
for a in range(0, n):
    first = first + a
    # print(first)
    line_1.append(int(first))
# print(line_1)

for a in range(1, n+1): #1234 好处理行
    # print("第"+str(a))
    for b in range(1, n-a+2):   #用来生成每一行的元素的,b对应的是这行的第几个元素
        if b == 1:  #第一个元素直接输出首行数组的对应元素
            print(line_1[a-1], end = ' ')
            line_pre = line_1[a-1]
        else:
            line_pre = line_pre + a + b - 1 #规律:下一个元素等于这一行的上一个元素值 + 当前行数 + 现在是本行第几个元素 - 1
            print(line_pre, end = ' ')
    print()

全部评论

相关推荐

不愿透露姓名的神秘牛友
07-10 11:45
你不要过来啊啊啊啊啊啊啊
码农索隆:对面:“今天你不面也得面”
点赞 评论 收藏
分享
机械打工仔:有说的你怀疑一下就行了,直接问也太实诚了
点赞 评论 收藏
分享
嵐jlu:我是山川🐔里🐔🧱的,阿里系简历全过; 你这简历一看就还是半成品啊,没有荣誉经历奖项什么的吗?
投递阿里巴巴集团等公司10个岗位
点赞 评论 收藏
分享
合不合适,我自己说了才算
码农索隆:hr:“真执着啊,来我公司当法人吧”
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务