她不知道能不能达成目标。你能告诉她吗?
一个正整数,
如果小红能按要求完成染色,输出"Yes"。否则输出"No"。
1234567
Yes
将3、4、7染成红色即可,这样3+4+7=1+2+5+6
23
No
显然无论如何都不能完成染色。
def ans(): nums = list(map(int , list(input()))) sum_num = sum(nums) if sum_num % 2 == 1: print("No") return else: target = sum_num // 2 dp = [0] * (target+1) dp[0] = 1 for n in nums: j = target while j >= n: dp[j] += dp[j-n] j -= 1 res = "Yes" if dp[target] else "No" print(res) ans()