如何割钢管,请给算法,高手请进,在线等候!!!

CBASE 2003-05-28 02:09:24
有长度为L(例如为10m)的钢管原料数根,要求按照不同的加工长度和根数(例如4.3m的3根,1.5m的5根,2.6m的2根------,切割成的成品的加工长度不固定,根数也不固定,可任意定义)进行切割,,如何切割更省料?请给出算法,代码更好,谢谢!!我的Email:st_soft@163.com
...全文
191 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
IT_worker 2003-05-30
  • 打赏
  • 举报
回复
假如有3种要裁的长度分别是l[0],l[1],l[2];对于一个向量x={x[0],x[1],x[2]}如果满足:
x[0]*l[0]+x[1]*l[1]+x[2]*l[2] <= 10 并且x[0],x[1],x[2]任何一个值增加都将导致
x[0]*l[0]+x[1]*l[1]+x[2]*l[2] > 10 我们称x为一个单管裁法。
第一步:
求出所有的单管裁法x1,x2,……,xn寻找整数a1,a2,……,an使得
x = x1*a1+x2*a2+……+xn*an
x[i]大于第i种管长需要裁的根数。
上面的问题是一个整数的线性规划问题,可以参考《运筹学》书上的相应算法。
sonique 2003-05-30
  • 打赏
  • 举报
回复
如果对于所举的例子,可用运筹学的单纯形法解,对于一般情况,不知道是否也可以这样解

xxqy 2003-05-30
  • 打赏
  • 举报
回复
我的算法知识很少,我想:这样可不可以?
1、先割最长的成品,一根原料管能割几段就先割几段,剩下的部分再割第二长的成品,也是能割几段就割几段,剩下的部分再割第三长的,也是能割几段就割几段,如果该种成品不够割,就割下一种次长的,直到不能个为止。
2、重复1
boylez 2003-05-28
  • 打赏
  • 举报
回复
贪婪即可
abcabc999 2003-05-28
  • 打赏
  • 举报
回复
用贪婪算法
CBASE 2003-05-28
  • 打赏
  • 举报
回复
难道无人能解?高手哪?
ZhangYv 2003-05-28
  • 打赏
  • 举报
回复
这里给出一个贪心的近似算法:
http://expert.csdn.net/Expert/topic/1693/1693718.xml?temp=.9892084
怎么装箱问题这么流行?看来我要拿段时间专门研究一下...
CBASE 2003-05-28
  • 打赏
  • 举报
回复
谁能解决?分不够,可再加!!!
CBASE 2003-05-28
  • 打赏
  • 举报
回复
谢谢提示!
HUNTON 2003-05-28
  • 打赏
  • 举报
回复
找找旧贴吧

33,028

社区成员

发帖
与我相关
我的任务
社区描述
数据结构与算法相关内容讨论专区
社区管理员
  • 数据结构与算法社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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