题解 | #杨辉三角的变形#

杨辉三角的变形

https://www.nowcoder.com/practice/8ef655edf42d4e08b44be4d777edbf43

a = int(input())
sum = 0
if a <=2:
    print(-1)
else:
    if (a-1) % 2 == 0:
        print(2)
    else:
        if (a/2) % 2 == 0:
            print(3)
        else:
            print(4)

每一行:
第一个数是1
第二个数是行数a-1
第三个数是从1加到a-1,通过判断从1到a-1这个数列中间值是否为奇数,可判断第三个数
因为奇数加奇数为偶数,所以若第三个数是奇数时,判断上一行的2,3,4个数奇偶性:
行数a-1是奇数,则a-2为偶数
从1到a-2的数列和可从成对数量判断,即(a-2)/2,这个数为偶数
再上一行,1为奇数,a-3为奇数,判断第三个数,即从1到a-3的数列中间值,这个值应为偶数,因1到a-1的中间值是奇数,奇数-1为偶数
故可得第四个数是偶数+偶数+偶数,所以第四个值为偶数

全部评论

相关推荐

迷茫的大四🐶:看来已经准备换人了
点赞 评论 收藏
分享
10-28 10:48
已编辑
门头沟学院 Java
孩子我想要offer:发笔试后还没笔试把我挂了,然后邮箱一直让我测评没测,后面不知道干嘛又给我捞起来下轮笔试,做完测评笔试又挂了😅
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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