有50枚硬币,可能包括4种类型:1元,5角,1角,5分。 已知总价值为20元。求各种硬币的量,比如2,34,6,8 就是一种答案。 而 2,33,15,0 是另一个可能的答案,显然答案不唯一。 你的任务是...
有50枚硬币,可能包括4种类型:1元,5角,1角,5分。
已知总价值为20元。求各种硬币的量,比如2,34,6,8 就是一种答案。
而 2,33,15,0 是另一个可能的答案,显然答案不唯一。
你的任务是确定类似这样的不同的方案一共有多少个(包括已经给出的2个)?
可以看出这里的硬币数量和存在着 1元×20+5角×10+1角×2+5分=400 这样的关系的分类才符合题目的要求
参考代码:
sums = 0
for i in range(20):
for j in range(40):
for k in range(200):
for l in range(400):
if ((i * 1 + j * 0.5 + k * 0.1 + l * 0.05) == 20 and (i + j + k + l) == 50):
print("一元:%d,五角:%d,一角:%d,五分:%d" % (i, j, k, l))
sums += 1
print(sums)