1 回答

TA貢獻1893條經驗 獲得超10個贊
如果可能,您希望盡量減少列表索引的使用,并迭代列表本身。這是一個有效的代碼:
# Pre-process denomination list before function, sorting in decreasing order
denomination_list = [1,15,10]
denomination_list.sort(reverse = True)
# Ensure ones are available for change (or infinite loop may result)
if denomination_list[-1] != 1:
denomination_list.append(1)
def make_change(denomination_list, amount):
change = []
# Iterate through coins
for coin in denomination_list:
# Add current coin as long as not exceeding ampoiunt
while amount:
if coin <= amount:
change.append(coin)
amount -= coin
else:
break
return change
amount= 43
print(make_change(denomination_list, amount))
這將適用于 的非整數(shù)值,amount并將列出向下舍入金額的變化。
添加回答
舉報