参考:http://www.cnblogs.com/python27/archive/2013/09/05/3303721.html

i表示只用前i种硬币,sum表示要组合出的面值

下图是当有面值为1,2,5的硬币,要凑出10的dp表

图中dp[2][3]=dp[1][3]+dp[1][1]=2,其中dp[1][3]是第2枚硬币取0的情况;dp[1][1]是第2枚硬币取1的情况,此时还需要凑1分即可。

#include <iostream>
#include <vector>using namespace std;int coinCombinations(const vector<int> &coins, int amount){if(coins.empty()) return 0;vector<vector<int>> dp(coins.size()+1,vector<int>(amount+1));for(int i=0;i<=coins.size();++i)dp[i][0]=1;for(int i=1;i<=coins.size();++i)for(int j=1;j<=amount;++j)for(int k=0;k<=j/coins[i-1];++k)dp[i][j]+=dp[i-1][j-k*coins[i-1]];return dp[coins.size()][amount];
}int main()
{vector<int> coins{ 1,2,5 };int sum = 10;int result = coinCombinations(coins, sum);cout << result << endl;return 0;
}

硬币面值组合问题(完全背包问题)相关推荐

  1. OpenJudge NOI 2.1 7621:硬币面值组合

    [题目链接] OpenJudge NOI 2.1 7621:硬币面值组合 [题目考点] 1. 枚举 2. 输出数字,0占位 在m个字符位置中输出数字n,右对齐,其余部分由0占位: printf(&qu ...

  2. 硬币面值组合(C++)

    硬币面值组合 总时间限制: 1000ms 内存限制: 65536kB 描述 使用1角.2角.5角硬币组成 n 角钱. 设1角.2角.5角的硬币各用了a.b.c个,列出所有可能的a, b, c组合. 输 ...

  3. 硬币兑换python 每个面值有多个_【算法27】硬币面值组合问题

    问题描述 假设我们有8种不同面值的硬币{1,2,5,10,20,50,100,200},用这些硬币组合够成一个给定的数值n.例如n=200,那么一种可能的组合方式为 200 = 3 * 1 + 1*2 ...

  4. 动态规划之硬币面值组合问题

    原文链接:http://www.cnblogs.com/python27/archive/2013/09/05/3303721.html 问题描述 假设我们有8种不同面值的硬币{1,2,5,10,20 ...

  5. 硬币面值组合(上台阶)

    假设我们有8种不同面值的硬币{1,2,5,10,20,50,100,200},用这些硬币组合够成一个给定的数值n.问总过有多少种可能的组合方式? 类似的题目还有: [华为面试题] 1分2分5分的硬币三 ...

  6. python硬币面值组合_【算法27】硬币面值组合问题

    问题描述 假设我们有8种不同面值的硬币{1,2,5,10,20,50,100,200},用这些硬币组合够成一个给定的数值n.例如n=200,那么一种可能的组合方式为 200 = 3 * 1 + 1*2 ...

  7. 硬币面值组合(C++)(枚举)

    总时间限制: 1000ms 内存限制: 65536kB  描述  使用1角.2角.5角硬币组成 n 角钱.  设1角.2角.5角的硬币各用了a.b.c个,列出所有可能的a, b, c组合.  输出顺序 ...

  8. 硬币面值组合的算法题解

    方法一 转自http://www.cnblogs.com/python27/archive/2013/09/05/3303721.html 动态规划的方法,是将m*n(m表示硬币的种类,n表示所要组成 ...

  9. 7621:硬币面值组合

    描述 使用1角.2角.5角硬币组成 n 角钱. 设1角.2角.5角的硬币各用了a.b.c个,列出所有可能的a, b, c组合. 输出顺序为:先按c的值从小到大,若c相同则按b的值从小到大. 输入 一个 ...

最新文章

  1. Pytorch 中的 5 个非常有用的张量操作
  2. 这24个高频存储问题,你一定要知道!如何不停机,安全更换数据库?大厂都怎么做MySQL到Redis同步的?...
  3. 我在谷歌实习时发现了一个模型 bug,于是有了这篇 ACL
  4. 【SAP-PM模块】服务采购业务流程
  5. SAP-PM-预防性维护-01-概览
  6. 利用 sys.sysprocesses 检查 Sql Server的阻塞和死锁
  7. 使用SMW0上传EXCEL模板遇到的问题
  8. 金融系统中正确的金额计算及存储方式
  9. Spring boot Tomcat配置
  10. 【转】细说.NET中的多线程 (六 使用MemoryBarrier,Volatile进行同步)
  11. 安装Nginx到linux服务器(Ubuntu)详解
  12. 创建全局SystemTray.ProgressIndicator
  13. 格雷码Gray Code详解
  14. fseek函数与ftell函数使用例程
  15. book118免费下载文档方法
  16. angular2--使用JsBarcode生成条形码
  17. 良好的Coding习惯,从P3C开始--阿里P3C代码规范扫描插件
  18. 关于ztree的使用
  19. 07 Anykey图像优化及文字头像生成与加载
  20. 乐优商城之品牌新增fastDFS(九)

热门文章

  1. lorem ipsum是什么
  2. 安卓逆向--凤凰新闻app简单分析
  3. IntelliJ IDEA更换代码字体为Consolas
  4. kill和killall的区别
  5. Linux locale命令
  6. ML-降维:PCA、SVD、LDA、MDS、LLE、LE算法总结
  7. 基于AI排序算法的指数增强策略
  8. 力扣199场比赛 5473. 灯泡开关 IV
  9. 逗号表达式--------问号表达式
  10. hadoop的小疑问:Map执行未结束便开始执行Reduce操作?