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

杨辉三角的变形

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为偶数
故可得第四个数是偶数+偶数+偶数,所以第四个值为偶数

全部评论

相关推荐

09-23 08:41
已编辑
门头沟学院 Java
牛客吹哨人:可恶!它越来越嚣张了...哨哥晚点统一更新到黑名单:能救一个是一个!26届毁意向毁约裁员黑名单https://www.nowcoder.com/discuss/1525833
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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