我试着把列表x中的两个数字之和,其中的20除以该和是不可能的,放到列表z中。我的代码不符合只能使用列表x中两个数字的组合的规则。例如,35是无效的,因为它不能通过添加列表x中的两个数字来形成。但是,它仍然出现在列表z的结果中
另外,我将“target”加5,因为5是列表x中的最低数字
我做错了什么
x = [200, 100, 50, 20, 10, 5]
target = 5
combi=0
max = x[0]+x[1]
z = []
while target <= max:
for i in x:
if i < target:
pair = target - i
if pair in x:
combi = 1
if combi == 1 and target % 20 != 0:
z.append(target)
target += 5
print(z)
给定输出:[10、15、25、30、35、45、50、55、65、70、75、85、90、95、105、110、115、125、130、135、145、150、155、165、170、175、185、190、195、205、210、215、225、230、235、245、250、255、265、270、275、285、290、295]
期望输出:[10,15,25,30,55,70,105,110,150,205,210,250]
请尝试以下代码:
您想要的输出:
输出: [15、25、30、55、70、105、110、150、205、210、250]
问题是您从未重置“combi”变量。这是你的固定密码
相关问题 更多 >
编程相关推荐