美文网首页
硬币问题-动态规划

硬币问题-动态规划

作者: MoneyRobber | 来源:发表于2019-02-20 17:58 被阅读0次

问题描述

假设有 1 元,3 元,5 元的硬币若干(无限),现在需要凑出 11 元,问如何组合才能使硬币的数量最少?

问题分析

我们先假设一个函数 d(i) 来表示需要凑出 i 的总价值需要的最少硬币数量
1.i = 0时候,d(i) = 0
2.i = 1时候,d(i) = 1
3.i = 2时候,d(i)=2
4.i = 3时候,d(i) = 1
...
有 d(i) = d(j) + 1
d(i)表示这一步的最优解,d(j)表示上一步的最优解,上一步的最优解加上一枚硬币就能得出这一步的最优解,这一枚硬币可能是1元,3元,5元,所以如下
d(i) = d(i - 1) + 1;//加一个1元硬币
d(i) = d(i - 3) + 1;//加一个3元硬币
d(i) = d(i - 5) + 1;//加一个5元硬币
由于我们要求出最少的硬币数量,所以我们比较d(i - 1),d(i - 3),d(i - 5)拿出最小的值,这个最小的值加1就是我们要求的结果

代码

相关文章

  • 函数式编程思想

    换硬币问题 问题就是动态规划里面的换硬币问题。所以函数式编程的关键和动态规划问题一样:递归关系式。换硬币问题发现他...

  • 硬币问题-动态规划

    问题描述 假设有 1 元,3 元,5 元的硬币若干(无限),现在需要凑出 11 元,问如何组合才能使硬币的数量最少...

  • 动态规划 凑硬币问题

    凑硬币问题 假设有 1 元,3 元,5 元的硬币若干(无限),现在需要凑出 11 元,问如何组合才能使硬币的数量最...

  • 07-05:动态规划review2

    动态规划常见问题 零、组合问题 1、硬币问题 n=len(arr) if n<=0 or aim<=0: ...

  • 硬币找零问题——动态规划

    问题阐述 给定一些面值的硬币(数量不限)和需要找零的金额,求一个找零所需硬币数最少的方案。现实生活中因其面值的特殊...

  • 最少硬币动态规划

    有 1,3,5等硬币,给定一个和,计算最少的硬币个数 假设这个和为p(i) i = 0.....n 表示和为i时的...

  • 动态规划-凑硬币

    题目描述 给定硬币面额 coins=[c1, c2, c3, ci] 以及金额 N。问最少多少枚硬币可以凑出金额 ...

  • 2018-08-21

    回溯法求子集,有个问题没有解决硬币问题动态规划:趴楼梯的最小代价https://blog.csdn.net/hap...

  • 算法问题——代码实现

    动态规划算法 斐波那契数列的循环实现 最长递增子串 换硬币问题 DTW(Dynamic Time Warping)实现

  • 动态规划

    动态规划,就是找问题子问题,并且建立关系,如何找出有用的子问题,很关键 1、1,3,5面值硬币,求n元,至少需要几...

网友评论

      本文标题:硬币问题-动态规划

      本文链接:https://www.haomeiwen.com/subject/hvstyqtx.html