求助:有没有人有这样一套算法?

lyj007 2003-09-23 07:48:24
功能听起来很简单,算起来比较麻烦。
一个列表中有很多商品及对应的价格,现在任意给出一个金额,
要求从列表中找出对应的商品拼凑出这个价格,并且要求商品数最少件。
举例:
商品A 13.24
商品B 17.33
商品C 22.25
商品D 37.26
商品E 10.00
商品F 10.43

给出金额 87.76 得出列表
商品D 37.26 2件 74.52
商品A 13.24 1件 13.24
合计 3件 87.76

当然还可以用 商品B + 商品F + 商品E * 6得出87.76的结果,但是用了8件商品,这就不符合件数最少的要求了,我想我这么说,大家应该明白我的意思了吧?希望大家帮帮忙,能想一套好的算法给我,小生我感激不尽。
...全文
31 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
klbt 2003-09-24
  • 打赏
  • 举报
回复

能不能按价格高低排序,先实验高价格能否满足要求,如果不行,减少一件高价商品,从次高价商品中试验... ...

这岂不是变成递归了?!
lyj007 2003-09-24
  • 打赏
  • 举报
回复
有没有人有现成的东东或者现成的算法、思路?
zzutligang 2003-09-24
  • 打赏
  • 举报
回复
求最优解的问题,一般讲解算法的书上应该有。
记得有一次的大学生数据奥林匹克竞赛中有一个题是这样的:
给出来一个村的地图,标记出来需要巡逻的若干地点,要求民兵将每一个要巡逻的地点都走到,但要求走的路程最少。
workhand 2003-09-24
  • 打赏
  • 举报
回复
看看算法书,上面就有这样的例子
eminena 2003-09-24
  • 打赏
  • 举报
回复
楼主的意思是:

某人花 N 元钱买以上商品,要求
1. 所购商品金额之和为 N 元
2. 所购商品的件数之和最小

这涉及到统筹学的概念,用不定方程知识也可求解!
intuition444 2003-09-24
  • 打赏
  • 举报
回复
感觉和’找钱‘的差不多,不过不能用贪婪法,贪婪法只求最快,但不是最优的,所以不能满足你的要求!
lyj007 2003-09-24
  • 打赏
  • 举报
回复
我正是这么做的,但是好象有漏洞,可能是我的算法不严谨。
YewPu 2003-09-23
  • 打赏
  • 举报
回复
不明白你说什么。
jdsnhan 2003-09-23
  • 打赏
  • 举报
回复
看看数据结构吧,里面有贪婪法可实现此功能,具体的写法要试试。
klbt 2003-09-23
  • 打赏
  • 举报
回复
需要用到一些数学知识,我没有现成的,但自己编写应该可以。
有时候可能无解,如果你给出的金额不合适的话。

1,075

社区成员

发帖
与我相关
我的任务
社区描述
PowerBuilder 相关问题讨论
社区管理员
  • 基础类社区
  • WorldMobile
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧