找零问题
找零问题
假设商店老板需要找零n元钱,钱币的面额有: 100元、50元、20元、5元、1元,如何找零使得所需钱币的数量最少?
解题思路:从最大面值的开始找,先找100,再找50,以此类推
# 贪心算法,找零问题 t = [100, 50, 20, 5, 1] def change(t, n): # n为要找的钱 m = [0 for _ in range(len(t))] for i, money in enumerate(t): m[i] = n // money n = n % money return m, n print(change(t, 376))

浙公网安备 33010602011771号