題目描述:
【題目描述】
有乙個箱子容量為v(正整數,0≤v≤20000),同時有n個物品(0< n ≤30),每個物品有乙個體積(正整數)。
要求n個物品中,任取若干個裝入箱內,使箱子的剩餘空間為最小。
【輸入】
第一行是乙個整數v,表示箱子容量。
第二行是乙個整數n,表示物品數。
接下來n行,每行乙個正整數(不超過10000),分別表示這n個物品的各自體積。
【輸出】
乙個整數,表示箱子剩餘空間。
【輸入樣例】246
83127
97【輸出樣例】
0**演算法分析:本題屬於動態規劃,揹包型動態規劃,相當於揹包容量和揹包中物品價值二者相等的一般揹包問題。(貌似也稱為偽揹包問題)對於每乙個物品i,都存在放入箱子和不放入箱子兩種情況。當前箱子容量剩餘j時,若i放入,則為dp[j-a[i]]+a[i]);
若i不放入,則為dp[i];因此,狀態轉移方程為:dp[j] = max(dp[j], dp[j-a[i]]+a[i])。分析完畢!!!
完整ac**:
裝箱問題(洛谷)
題目描述 有乙個箱子容量為 v,同時有 n 個物品,每個物品有乙個體積 正整數 要求 n 個物品中,任取若干個裝入箱內,使箱子的剩餘空間為最小。輸入格式 1 個整數,表示箱子容量 1 個整數,表示有 n 個物品 接下來 n 行,分別表示這 n 個物品的各自體積 輸出格式 1 個整數,表示箱子剩餘空間...
洛谷 P1049 裝箱問題
題目描述 有乙個箱子容量為v 正整數,0 v 20000 同時有n個物品 0 n 30,每個物品有乙個體積 正整數 要求n個物品中,任取若干個裝入箱內,使箱子的剩餘空間為最小。輸入輸出格式 輸入格式 乙個整數,表示箱子容量 乙個整數,表示有n個物品 接下來n行,分別表示這n 個物品的各自體積 輸出格...
洛谷P1049 裝箱問題
有乙個箱子容量為v 正整數,0 v 20000 同時有n個物品 0要求n個物品中,任取若干個裝入箱內,使箱子的剩餘空間為最小。輸入格式 1個整數,表示箱子容量 1個整數,表示有n個物品 接下來n行,分別表示這n個物品的各自體積 輸出格式 1個整數,表示箱子剩餘空間。輸入樣例 1 複製 2468 31...