题解 | #找零# 动态规划

找零

http://www.nowcoder.com/questionTerminal/944e5ca0ea88471fbfa73061ebe95728

动态规划求解

cost = int(input())
money = 1024 - cost
def func(money):
    dp = [money for _ in range(money + 1)]
    dp[0] = 0
    amount = [1, 4, 16, 64]
    for i in range(1,money+1):
        for j in range(len(amount)):
            if i >= amount[j]:
                dp[i] = min(dp[i], dp[i - amount[j]] + 1)
    return dp[money]
print(func(money))
全部评论

相关推荐

02-05 08:49
已编辑
武汉大学 Web前端
野猪不是猪🐗:36k和36k之间亦有差距,ms的36k和pdd的36k不是一个概念
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务