Source: Problem - 996A - Codeforces
状态转移方程
题解
n=eval(input())
big=n//100
n%=100
coins=[1,5,10,20,100]
dp=[float("inf") for i in range(n+1)]
dp[0]=0
for i in range(1,n+1):
for coin in coins:
if i-coin >=0:
dp[i]=min(dp[i],dp[i-coin]+1)
print(dp[n]+big)
这篇博客介绍了一个使用动态规划算法解决找零问题的实例。代码中,作者通过状态转移方程来确定最少硬币数量,考虑了不同面额的硬币,并给出了完整的Python代码实现。该算法能有效地找出凑出目标金额所需的最少硬币数。

985

被折叠的 条评论
为什么被折叠?



