HJ35 题解 | #蛇形矩阵#

蛇形矩阵

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

#纯纯找规律
#1、蛇形矩阵第一行输出元素个数即为输入的数字
#2、第一行的递增数目为2、3、4、5、、、、
#3、第一列的递增数目为1、2、3、4、、、、
#4、行数为输入数字
#5、由3可以计算出每一行第一个数字的通项公式为:An=1+(n-1)n/2,n为行数
#6、由2可知,每一行的起始步长为n+1,n为行数
#7、在每一行内部,步长都是递增1的

a=int(input())
for i in range(a):#行数
    front=1+(i+1)*i//2 #每一行的开头数字
    bc=2+i #每一行内部的步长,变化的
    temp=front#利用临时变量存储每次需要输出的元素
    print(temp,end=" ")
    for j in range(a-i-1):#列数 注意第一个元素在上面输出了,所以只需要输出a-i-1个元素即可
        temp=temp+bc#新的元素为上一个元素加上步长
        print(temp,end=" ")
        bc+=1#步长递增1
    print()
	

#华为##华为od##华为机试##华为od机试#
华为HJ103所有解法 文章被收录于专栏

这是我准备华为od面试的专属专栏,我会把自己的解法更新在里面,我会尽量写清楚自己的思路以及多写关键注释,希望对阅读的人有帮助~~~

全部评论

相关推荐

秋盈丶:后续:我在宿舍群里和大学同学分享了这事儿,我好兄弟气不过把他挂到某脉上了,10w+阅读量几百条评论,直接干成精品贴子,爽
点赞 评论 收藏
分享
白火同学:能。我当初应届沟通了1200,收简历50,面试10左右吧,加油投吧
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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