贪心算法设计 之最少硬币数目
2015-04-02 21:40
141 查看
//题目描述:现在有1元,5元,10元,50元,100元,500元的硬币各c1,c2...c6枚 //现在需要去付钱数为A元,问,至少需要多少枚硬币 //算法:只需要不断选择面值大的硬币就可以了,因为问题保证有解 #include<iostream> #include<string.h> #include<algorithm> using namespace std; int A, v[6] = { 1, 5, 10, 50, 100, 500 }, c[6]; int main() { while (cin >> A){ memset(c, 0, sizeof(c)); //input for (int i = 0; i < 6; i++){ cin >> c[i]; } int ans = 0; //from big to small for (int i = 5; i >= 0; i--){ int t = min(A / v[i], c[i]); A -= t*v[i]; ans += t; } cout << ans << endl; } return 0; }
相关文章推荐
- ACM_程序设计竞赛:贪心算法:硬币问题
- 贪心算法最少硬币数
- 硬币找钱问题,求所有可能解决方案数目,最少的钱币数目,每种钱币用多少张
- 贪心算法设计 关于区间选择问题
- 算法设计--八枚硬币问题
- ACM_程序设计竞赛:贪心算法:saruman army
- ACM_程序设计竞赛:贪心算法:字典最小序
- 把一张面值为一元的纸币,换成一分,二分,五分的硬币,共有多少种换法?编程输出每一种不同的换法。 如果每种硬币至少有一个,编程求出所需硬币最少的数目及换法。
- 算法分析与设计-15-背包问题的贪心算法
- 算法_动态规划_最少硬币问题
- 算法设计之贪心
- 算法竞赛入门经典:第八章 高效算法设计 8.17 贪心之选择不相交区间
- LeetCode: LRU Cache 最近最少使用算法 缓存设计
- 算法笔记——硬币找零之最少硬币数
- 贪心算法的设计思想
- 贪心算法 Problem R 1017 求最少所需包裹
- 贪心算法——硬币问题
- 算法设计--八枚硬币问题
- 集训第四周(高效算法设计)G题 (贪心)
- 程序设计:贪心算法解决硬币问题