求一个算法思路,类似一维装箱?

有很多小矩形(膜材料和长度可能不一样,但是高度是统一的):a120,a250,b12,b200,c300,c450,… 字母表示膜的材料,数值表示长度。
要将这些矩形进行分类,变成更大的矩形(水平平铺,不同的膜材料可以放在一起,但是不同材质的矩形之间要留10毫米间距,相同材质的可以紧密接触)。
比如:(a120,a250,c300) 组成新的矩形长度为120+250+300+(10)。 此处10是因为a,c膜材料不一样,他们之间要留10的空白间距。

且,这些大矩形长度必须在675-1012之间,如果没有达到675,则按675计算。所以上面那个矩形最终是675

要求最后得到的大矩形总的长度最小。
求计算方法。

posted @ 2024-06-03 15:50  相忘于江湖  阅读(13)  评论(0编辑  收藏  举报