二維矩形原料的簡易求解(上)

2021-08-17 22:50:47 字數 843 閱讀 4687

需求:

包裝工廠接到不同規格紙箱的訂單,按訂單批次進料(原紙),原紙的寬度(width)有多種規格(20多種)但長度(long)不限,原料**按長度梯度有優惠。為簡化求解,先將紙箱(產品)展開轉化為矩形(矩形),然後按長(l)、寬(w),分別求解不同寬度原紙的長度,從而計算出**;找出相對最優解。

同種矩形,從原紙的寬度先排列(原紙橫排)

1 矩形豎排(單個),用矩形的寬度w,求解不同寬度原紙的長度,計算出**

long = w*size ; price = long * 梯度優惠

2 矩形橫排(單個),用矩形的長度,求解不同寬度原紙的長度,計算出**

long = l*size;price = long * 梯度優惠

3 矩形豎排(n個),用矩形的寬度w,求解不同寬度原紙的長度,計算出**

n=width/w

long = w*((size-1)/n +1) ; price = long * 梯度優惠

4 矩形橫排(n個),用矩形的長度,求解不同寬度原紙的長度,計算出**

n=width/l

long = l*((size-1)/n +1) ; price = long * 梯度優惠

5 矩形橫豎排(n個),便於工業操作,豎排的一直豎排,橫排的一直橫排,求解不同寬度原紙的長度,計算出**

不同種矩形(先按兩種矩形),從原紙的寬度先排列(原紙橫排)

在二維矩形最優解有很多演算法,但都是學術研究的解法,太過於理想不適合工業生產,特別是小型企業,存在生產限制條件的企業;大型企業都有固定的產品規格,**原料商會提供相對規格的原料,根本不會用到二維矩形最優解來解決下料問題。我們所熟知的就是那些為小眾公司帶來方便的技術應用。

深圳逆時針

二維陣列最值求解

package arithmetic 對於二維陣列,每一行的最大值集合裡一定有整個陣列的最大值 對於每一列的最大值,邏輯是類似的 author zengsht public class maxarray 儲存每一行的最大值 int temp1 new int 5 for int i 0 i 5 i ...

二維莫隊 二維分塊 bzoj2639 矩形計算

法一 二維莫隊,對n和m分別分塊後,對塊從上到下從左到右依次編號,詢問以左上角所在塊編號為第一關鍵字,以右下角標號為第二關鍵字排序,轉移時非常厲害。o q n sqrt n include include includeusing namespace std define n 201 define ...

Monitor(矩形覆蓋 二維差分)

原題 題意 給出n個矩陣,q個查詢,問乙個矩陣是否被之前的矩陣完全覆蓋。解析 對於每個矩陣進行差分 每個矩陣的左上角 1,右下角 1,另外兩個 1。那麼此時的二維字首和就表示某個點被覆蓋的次數了。例如 黃色為0,紅色為1 然後將每個有被覆蓋的點變成1,否則為0,此時再次做二維字首和,得到的就是一定區...