P1049 裝箱問題

2021-09-07 14:26:51 字數 780 閱讀 7868

有乙個箱子容量為v(正整數,0<=v<=20000),同時有n個物品(0<n<=30,每個物品有乙個體積(正整數)。

要求n個物品中,任取若干個裝入箱內,使箱子的剩餘空間為最小。

輸入格式:

乙個整數,表示箱子容量

乙個整數,表示有n個物品

接下來n行,分別表示這n 個物品的各自體積

輸出格式:

乙個整數,表示箱子剩餘空間。

輸入樣例#1:

2468

31279

7

輸出樣例#1:

0

noip2001普及組 第4題

跟採藥相比也就少了個每個物品的價值,但物品的體積也可以看作是它的價值,最後總體積減去最大體積就是答案

01揹包的模板題。f[j]=max(j>=v)表示盒子體積為j時裝入最大體積。注意輸出時要c-[c]

1 #include2 #include3

using

namespace

std;4//

d[i]表示前i個物品,最大體積

5const

int maxn=20001; 6

7int

main()8;

10 scanf("

%d%d

",&c,&n);

11for(int i=0;i)

1217 printf("

%d",c-f[c]);

18return0;

19 }

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揹包,能不能再簡單一點,我也是沒看出有多少改變。跟採藥相比也就少了個每個物品的價值,但物品的體積也可以看作是它的價值...