【发布时间】:2020-05-29 15:07:08
【问题描述】:
开发一个方法change(amount),对于 24 到 1000 范围内的任何整数数量,返回一个仅由数字 5 和 7 组成的列表,使得它们的总和等于数量。例如,change(28) 可能返回[7, 7, 7, 7],而change(49) 可能返回[7, 7, 7, 7, 7, 7, 7] 或[5, 5, 5, 5, 5, 5, 5, 7, 7] 或[7, 5, 5, 5, 5, 5, 5, 5, 7]。
我写过这样的东西。但它不能正常工作。
enter code here
def change (amount):
assert (amount >=24)
if amount == 24:
return [5, 5, 7, 7]
if amount == 29:
return [5, 5, 5, 7, 7]
if amount == 40:
return [5, 5, 5, 5, 5, 5, 5, 5]
coins = change(amount - 5)
coins.append(5)
return coins
对于范围内的硬币(24, 1000): 打印(硬币)
【问题讨论】:
-
请少花点时间道歉并提供minimal reproducible example - “工作不正常” 究竟是什么意思?这是您的代码,还是只是“类似”?选择tour,相应地查看How to Ask 和edit。
-
谢谢@jonrsharpe
标签: logic