有乙個箱子容量為vv
v(正整數,0≤v≤200000 \le v \le 200000≤
v≤20
000),同時有nn
n個物品(0
030,每個物品有乙個體積(正整數)。
要求nn
n個物品中,任取若干個裝入箱內,使箱子的剩餘空間為最小。111
個整數,表示箱子容量111
個整數,表示有nn
n個物品
接下來nn
n行,分別表示這nn
n個物品的各自體積111
個整數,表示箱子剩餘空間。
輸入 #1
2468輸出 #131279
7
0noip2001普及組 第4題
使剩餘空間最小,就是要取最大的體積。把體積看作是每個物品的價值,這又是乙個01揹包問題
#includeusing namespace std;
int max(int a,int b)
int main();
int v,n;
int w[31];
cin>>v>>n;
for(int i=1;i<=n;i++)
cin>>w[i];
for(int i=1;i<=n;i++)
for(int j=v;j>=w[i];j--)
dp[j]=max(dp[j],w[i]+dp[j-w[i]]);
cout
}
P1049 裝箱問題
題目描述 有乙個箱子容量為v 正整數,0 v 20000 同時有n個物品 0 n 30,每個物品有乙個體積 正整數 要求n個物品中,任取若干個裝入箱內,使箱子的剩餘空間為最小。輸入輸出格式 輸入格式 乙個整數,表示箱子容量 乙個整數,表示有n個物品 接下來n行,分別表示這n 個物品的各自體積 輸出格...
P1049 裝箱問題
題目描述 有乙個箱子容量為v 正整數,0 v 20000 同時有n個物品 0 n 30,每個物品有乙個體積 正整數 要求n個物品中,任取若干個裝入箱內,使箱子的剩餘空間為最小。輸入輸出格式 輸入格式 乙個整數,表示箱子容量 乙個整數,表示有n個物品 接下來n行,分別表示這n 個物品的各自體積 輸出格...
P1049 裝箱問題
有乙個箱子的容量為v,有n個物品,每個物品都有乙個體積,要求在這n個物品中使箱子剩餘的體積最小。2468 31279 70o nm 連續寫了4題關於動態規劃的題目,但毫不例外的都是01揹包,能不能再簡單一點,我也是沒看出有多少改變。跟採藥相比也就少了個每個物品的價值,但物品的體積也可以看作是它的價值...