leetcode 切鋼條問題

2021-10-23 03:22:47 字數 622 閱讀 9544

題目描述:某公司購買了長鋼條,將其切割為短鋼條**。切割工序本身沒有成本支出。公司管理層希望知道最佳的切割方案。假定我們知道**一段長為i英吋的鋼條的**為pi,鋼條的長度均為整英吋。給出乙個**表的樣例如下:

解題步驟:由於每款長度的鋼條數量無限,所以採用無限揹包的方法。

1、 狀態定義:dp[i]表示切割長度為i的鋼條的最大收益

2、 狀態轉移方程:dp[i] = max(dp[i],dp[i-len[j]]+price[j]) (i >= len[j])

3、 初始化: dp[i] = 0;

4、 輸出:dp[i]

**

public int maxprice(int size,int price,int len) 

} return dp[len];

}

動態規劃 切鋼條

一家公司購買長鋼條,將其切割成短鋼條 切割本身沒有成本,長度為i的短鋼條的 為pi。那給定一段長度為n的鋼條和乙個 表pi,求鋼條的切割方案使得收益rn最大。輸入鋼條的長度n。輸出獲得的最大收益。718 問題思路 把長度為n的鋼條看做n段長度為1的鋼條,從鋼條的最左端開始的相鄰連線點開始,可以選擇切...

動態規劃之切鋼條

填寫備忘錄表。查詢。從低到高遞迴填寫備忘錄。最初資料,經過幾次抉擇,產生更多資料。public static class dynamicprocess fill notetable.integer notetable new integer 6 notetable 0 0 filltable not...

鋼條切割問題

動態規劃的一般步驟 1.刻畫乙個最優解的結構特徵 2.遞迴定義最優解的值 3.計算最優解的值,通常採用自底向上的方法 4.利用計算出的資訊構造乙個最優解 利用動態規劃方法求解類似鋼條切割方案的這一類遞迴問題,可避免反覆求解相同的子結構,下面是樸素遞迴演算法和用動態規劃設計的遞迴演算法的相應實現。鋼條...