早教吧作业答案频道 -->数学-->
(1)描述:编写程序,从订单中选择一组订单对钢材作切割加工,使钢材得到最佳利用,约定每一次切割会损耗固定长度的钢材(约定该值为2).已知线型钢材总长度、订单数和各订单需要的钢
题目详情
(1)描述:编写程序,从订单中选择一组订单对钢材作切割加工,使钢材得到最佳利用,约定每一次切割会损耗固定长度的钢材(约定该值为2).已知线型钢材总长度、订单数和各订单需要的钢材长度;
(2)输入:钢材总长度s、订单数n、各定单需要的钢材长度;
(3)输出:可以使钢材得到最佳利用的订单号、该订单需要的钢材长度.
(2)输入:钢材总长度s、订单数n、各定单需要的钢材长度;
(3)输出:可以使钢材得到最佳利用的订单号、该订单需要的钢材长度.
▼优质解答
答案和解析
对问题进行转化和建模,实际上就是按照最后输出的这组订单序列可以得到钢材最多.于是建模就是这样.假设a1 a2 a3 a4...表示订单需要的钢材长度 其实就是找一个使(a1+a2...+an) 这个多项式值最大的序列,但是又要满足(a1+a2...+an) +(n-1)*2 < L 钢材总长度L
然后就排序枚举就好了. 想优化的话,注意下剪枝就行了.比如要从n=1,开始枚举,每次枚举都先从大往小了枚举,记录每个n值对应的序列和 最大的(a1+a2...+an) 值 若n+1时最大的(a1+a2...+a(n+1)) 比最大的(a1+a2...+an) 小 则停止枚举 (a1+a2...+an) 则为所求
然后就排序枚举就好了. 想优化的话,注意下剪枝就行了.比如要从n=1,开始枚举,每次枚举都先从大往小了枚举,记录每个n值对应的序列和 最大的(a1+a2...+an) 值 若n+1时最大的(a1+a2...+a(n+1)) 比最大的(a1+a2...+an) 小 则停止枚举 (a1+a2...+an) 则为所求
看了 (1)描述:编写程序,从订单...的网友还看了以下:
甲收到一份来自乙的电子订单后,将订单中的货物送达乙时,乙否认自己发送过这份订单。为了防范 2020-05-23 …
( 50 ) 甲收到一份来自乙的电子订单后,将订单中的货物送达乙时,乙否认自己发送过这份订单。为了防 2020-05-23 …
甲收到一份来自乙的电子订单后,将订单中的货物送达乙时,乙否认自己发送过这份订单。为了防范这类 2020-05-24 …
2016年11月,A服装厂接到某公司一批文化衫订单,为此花1170元(含增值税170元)购买了布料 2020-06-22 …
英语翻译订单122和订单133为同一个客户,所以VAT信息一样! 2020-06-29 …
加工厂接到一批订单,为完成订单任务,需用a米长的材料440根,b米长的材料480根,可采购到的原料 2020-07-07 …
英语翻译昨天不是已经说好了订单号为:42309033的订单已经取消了吗!为什么却发货了? 2020-07-20 …
英语翻译我们很遗憾不能接受AAA订单,因为是新型体且订单数量较少.请在有新的订单数量时再联系我们. 2020-07-20 …
英语翻译非常抱歉,因为当时我们的仓库这本书卖完了,但是我们又想达成这笔订单,就为您在别家订了一本,如 2020-11-14 …
英语翻译订单号为12345,我公司与7月28号发给贵公司的产品,订单中的要求是一种要5件,但是由于次 2020-11-28 …