Python初学者偶数判断输出YES/NO代码无法通过测试求助
你代码的核心逻辑方向是对的,但是遗漏了边界场景的校验,才会导致隐藏用例不通过。
问题分析
你描述的规则本质上等价于巧克力重量需要是能被4整除的正整数:
- 重量为偶数且一半也为偶数,说明重量 = 2 * (偶数) = 4 * 正整数
- 额外需要排除小于等于2的无效重量:比如重量为0、2的场景,不符合巧克力可以拆分出两块有效巧克力的要求
你现有代码的问题是没有排除无效值,比如输入0时,现有代码会输出YES,但不符合题目隐含的巧克力重量为正的前提。
修正后代码
choc_weight = int(input()) # 满足大于等于4且能被4整除即可 if choc_weight >= 4 and choc_weight % 4 == 0: print("YES") else: print("NO")
验证示例
- 输入
4:输出YES(一半为2,符合要求) - 输入
10:输出NO(10不能被4整除,符合你给出的示例要求) - 输入
0:输出NO(无效重量) - 输入
2:输出NO(无法拆出两块偶数重量的巧克力)
内容的提问来源于stack exchange,提问作者Anony
相关产品推荐
相关产品推荐

