最优算法问题,请高手赐教!

zxh806 2004-12-12 10:22:54
本人遇一难题,苦思无果,特来请大虾指教。
问题如下:
有几根大钢材如:1米、1.5米、1.8、2米可供裁减,数量不限,另需要裁成的小钢材有多种如:0.3米数量若干、0.8米数量若干、1.2米数量若干,若小钢材的数量都是1,则有多种裁法,如:(1).用1.5米的大钢材正好可以裁成一根0.3和一根1.2米的小钢材,用1米的大钢材裁成一根0.8米的小钢材,这样浪费0.2米;(2).如果用一根2米的大钢材正好可裁成一根0.8和1.2米的小钢材,用1米的大钢材裁成一根0.3米的小钢材,这样会浪费0.7米。
也就是小钢材的长度和数量自己输入,大钢材的长度也是自己输入,不过可能有几种规格可供选择,数量反正不限制,求最结省钢材的裁减算法。
...全文
145 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
zxh806 2004-12-29
  • 打赏
  • 举报
回复
郁闷散分了,人人有份
thunderniao 2004-12-29
  • 打赏
  • 举报
回复
要求最结省钢材,就是对每种规格的大钢材进行拆分,使剩余最小,与数量无关
对于长度为L的大钢材,依次用小规格的长度(排好序)来相减,有可能得到最小的差值
注意贪心算法不一定能得到最优解
kuki84 2004-12-19
  • 打赏
  • 举报
回复
典型的动态规划
zxh806 2004-12-12
  • 打赏
  • 举报
回复
大钢材有多根可选、小钢材也是,穷举法可能行不通、裁法太多了
ahjoe 2004-12-12
  • 打赏
  • 举报
回复
用穷举法。即尝试每一种裁法,取最优者。

16,748

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 语言基础/算法/系统设计
社区管理员
  • 语言基础/算法/系统设计社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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