硬币找零问题 动态规划问题
来源:互联网 发布:推荐淘宝高达店 编辑:程序博客网 时间:2024/05/18 03:47
看到了http://blog.csdn.net/kangroger/article/details/36036101 这文章,由于我不太懂他的代码,所以我按他的题和思路,写了代码;
思路我就不写了,就是动态规划的思路,先保证局部最优,再慢慢向全局部最优;
#include <iostream>#include <cstring>#include <malloc.h>#include <algorithm> using namespace std;const int M=100;int coinSum[M];int coinValue[M];void FindMin(int coin[], int money){int i,j,k,temp,min,flag;memset(coinSum, 999, sizeof(int)*M);coinSum[0] = 0;for(i=1; i<=money; i++){min = 999;for(j=0; j<5; j++ ){temp = i-coin[j];if(temp<0) break;if(min > coinSum[temp]+1){min = coinSum[temp]+1;flag = coin[j];}}coinValue[i] = flag;coinSum[i] = min;}printf("coin Sum = %d\n",coinSum[money]);int n = coinSum[money];printf("coin value = ");while(n--){ //这野输出硬币,我用一个小技巧,由于coinValue中存的是新加的硬币//,用当前钱减去硬币值 的 值 ,然后输出这个值的coinvalue,依次类推; printf("%4d ",temp = coinValue[money]);money = money-temp;}}int main(){int coin[5] = {1,2,5,9,10};int money = 18;FindMin(coin, money);return 0;}
阅读全文
0 0
- 硬币找零问题 - 动态规划
- 硬币找零问题 动态规划问题
- 硬币找零问题(动态规划)
- 硬币找零问题(动态规划求解)
- 最少硬币找零问题-动态规划
- 最少硬币找零问题-动态规划
- 动态规划入门之硬币找零问题
- 动态规划算法求解硬币找零问题
- 动态规划之最少硬币找零问题
- 动态规划求解硬币找零问题——Java实现
- 动态规划算法求解硬币找零问题(Java)
- 动态规划算法求解硬币找零问题(Java)
- JAVA动态规划(一)--最少硬币找零问题
- 动态规划算法求解硬币找零问题 (2)
- 动态规划算法求解硬币找零问题(1)
- 人民币找零 vs 硬币问题 贪心 vs 动态规划
- 动态规划算法求解硬币找零问题(Java)
- 【动态规划】之硬币找零问题(难度:1星)
- vi 的使用
- 文章标题4.(4)
- python圣斗士修炼(五):常用的数据结构
- 我在聚宽共享函数一
- java概念的小问题总结(二)
- 硬币找零问题 动态规划问题
- 输出10个100以内的随机数(c实现)
- c++构造函数
- 递归函数
- 文章标题
- HTTP服务器返回的代码详解
- python 元组和方法
- 四种获取下标的方法
- Linux 下的任务自动化