LINTCODE—— Coin Change II
来源:互联网 发布:子程序铣螺纹怎么编程 编辑:程序博客网 时间:2024/05/16 11:22
LINTCODE—— Coin Change II
题目:给你一个amount,再给你一个硬币数组,coins,数组的值表示为硬币的价值,硬币可以无限使用,求从数组中选择一定的组合满足硬币总价值等于amount有多少种情况
思路:动态规划,类似于无限背包问题,假定dp[j]为从数组coins中选取总价值为j的情况,则不难得出有:dp[j] = dp[j] +dp[j-coins[i]],coins[i]为第i个硬币的价值
class Solution {public: /** * @param amount: a total amount of money amount * @param coins: the denomination of each coin * @return: the number of combinations that make up the amount */ int change(int amount, vector<int> &coins) { // write your code here // write your code here // 无限背包问题变种 // 初始化dp数组 vector<int> dp(amount+1,0); dp[0] = 1; for (int i = 0 ; i < coins.size(); i++) { for (int j = 1 ; j <= amount; j++) { if(j >= coins[i]) dp[j] += dp[j-coins[i]]; } } return dp[amount]; }};
阅读全文
0 0
- LINTCODE—— Coin Change II
- Coin Change II-LintCode
- 1232 - Coin Change (II)
- Coin Change (II)
- Coin Change II
- DP——Coin Change
- LeetCode—322. Coin Change
- hdu(2069)——Coin Change
- 动态规划——322. Coin Change
- HDU 2069 —— Coin Change
- LightOJ 1232 - Coin Change (II) 【完全背包】
- LightOJ 1232 Coin Change (II)(完全背包)
- Light OJ 1232 Coin Change (II)
- lightoj 1232 - Coin Change (II) 完全背包
- 541. Reverse String II\322. Coin Change
- leetcode——322——Coin Change
- LeetCode学习篇九——Coin Change
- 一种的多重背包背包——Coin Change
- spring-aop简单实例
- lintcode&九章算法——64 合并排序数组 II ? 待解决
- You don't appear to have the necessary permissions to install packages
- 购物车的适配器
- 个人理解 java虚拟机中的符号引用和直接引用
- LINTCODE—— Coin Change II
- 折腾了快两天的问题
- connect-mongo
- Anaconda使用介绍
- 一个简单网页游戏--丑陋的连连看
- 风投简介及互联网/IT的风投
- org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter找不到
- 表单验证validation插件的使用
- [BZOJ1088]-[SCOI2005]扫雷Mine-简单dp