p1133裝箱問題
accepted
標籤:noip普及組2001
[顯示標籤]
有乙個箱子容量為v(正整數,o≤v≤20000),同時有n個物品(o≤n≤30),每個物品有乙個體積 (正整數)。要求從 n 個物品中,任取若千個裝入箱內,使箱子的剩餘空間為最小。
第一行,乙個整數,表示箱子容量;
第二行,乙個整數,表示有n個物品;
接下來n行,分別表示這n個物品的各自體積。
乙個整數,表示箱子剩餘空間。
246831279
7
0
每個測試點1s
思路:
裸的01揹包,唯一的變化就是此題的花費和價值都是指的體積v[i]
狀態轉移方程:f[j] = max;
**:
#include#include#includeusing namespace std;
using namespace std;
//f[j] = max
const int n = 40;
const int t = 20000+10;
int f[t];//f[j] j容量時最大體積
int v[n];
int main()
Vijos P1133 裝箱問題 01揹包
有乙個箱子容量為v 正整數,o v 20000 同時有n個物品 o n 30 每個物品有乙個體積 正整數 要求從 n 個物品中,任取若千個裝入箱內,使箱子的剩餘空間為最小。第一行,乙個整數,表示箱子容量 第二行,乙個整數,表示有n個物品 接下來n行,分別表示這n個物品的各自體積。乙個整數,表示箱子剩...
裝箱問題 01揹包
有乙個箱子容量為v 正整數,0 v 20000 同時有n個物品 0 n 30 每個物品有乙個體積 正整數 要求n個物品中,任取若干個裝入箱內,使箱子的剩餘空間為最小。輸入 第一行是乙個整數v,表示箱子容量 第二行是乙個整數n,表示有n個物品 接下來n行,分別表示這n 個物品的各自體積 乙個整數,表示...
裝箱問題(01揹包問題)
有乙個箱子容量為 v,同時有 n 個物品,每個物品有乙個體積 正整數 要求 n 個物品中,任取若干個裝入箱內,使箱子的剩餘空間為最小。輸入格式 第一行是乙個整數 v,表示箱子容量。第二行是乙個整數 n,表示物品數。接下來 n 行,每行乙個正整數 不超過10000 分別表示這 n 個物品的各自體積。輸...