修改后的变更问题
change-making problems with some modifications
在以下Greedy算法的找零问题中,解决了以下问题:如何用最少的硬币来赚一定数量的钱?
算法:如果可能的话,使用最有价值的硬币。假设我们有无限数量的每一套硬币。
我的教授写道,(4)不是产生最优解,有人会说为什么?(或者为什么其他不是反例?)
1- {1,2,5}
2- {1,4,7}
3-{1,5,10}
4-{1,7,10}
在需要表示14:的情况下,对集合#4中的硬币应用贪婪策略不会产生最佳结果
- 贪婪策略将尽快花费10枚硬币,最终获得4枚硬币,总共5枚硬币
- 一个最佳策略是拿两个七分硬币,总共两个硬币
很容易看出,如果存在一个硬币C
,使得值k*C
可以由至少k+1
个硬币组成,如果你取更高面额的硬币中的任何一个,那么贪婪算法将不会成功。
在您的最后一组C=7
、k=2
、kC=14
中。如果你用10
来制作14
,你需要五个硬币,比k
多。
相关文章:
- 警告处理为错误这里有什么问题
- 修改C++结构的特征成员时出现问题
- packaged_task示例问题?斯特劳斯特鲁普示例修改
- 我在让我的代码输出整个链表时遇到问题.它只是输出我修改过的一些文本文件,而不是整个东西
- Boost::P rocess编译问题,不得不修改库才能使其工作
- 作用域问题:如何从类外查看(不访问也不修改!)私有属性
- 修改后的变更问题
- 使用基对象修改/访问派生类的信息的有问题的设计
- C++ 修改带有数字的字符串时出现问题
- 修改鼠标移动时出现问题
- 堆栈溢出错误 c++.我如何修改/修复此代码以摆脱此问题
- C++通过引用修改函数中的结构值(可能存在编译顺序问题)
- 修改的动态背包-有问题的输入
- 在const函数中修改私有int存在问题
- 递归中修改调用指针的问题
- 在ce5上从c#传递结构体并在非托管c++ dll中修改的问题
- Const用法——这里应该修改什么来修复这个问题
- Qt,在构造函数之外修改小部件属性的问题
- 反转计数出现问题(修改合并排序的实现)
- 修改硬币更换问题以跟踪使用了多少硬币(不是最小数量)