裝箱問題 DP

2021-06-21 21:46:43 字數 545 閱讀 1034

裝箱問題  (pack.pas/c/cpp)

【問題描述】

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

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

【輸入檔案】

第一 行乙個正整數v表示箱子的容量,第二行乙個正整數n表示物品個數,接下來n行列出這n個物品各自的體積。

【輸出檔案】

單獨一行,表示箱子最小的剩餘空間。

【輸入樣例】

【輸出樣例】

#include 

#include

int f[31][20001],c[31];

int main()

memset(f,0,sizeof(f));

int j;

for (i=1;i<=n;i++)

{for(j=v;j>=c[i];j--)

{if(f[i-1][j]

DP 裝箱問題

有乙個箱子容量為v 正整數,0 v 20000 同時有n個物品 0 n 30 每個物品有乙個體積 正整數 要求n個物品中,任取若干個裝入箱內,使箱子的剩餘空間為最小。sample input 第一行 乙個整數,表示箱子容量 第二行 乙個整數,表示有n個物品 接下來n行,分別表示這n 個物品的各自體積...

裝箱問題 dp 遞迴

有乙個箱子容量為vv 正整數,0 le v le 200000 v 20000 同時有nn個物品 0要求nn個物品中,任取若干個裝入箱內,使箱子的剩餘空間為最小。輸入格式 11個整數,表示箱子容量 11個整數,表示有nn個物品 接下來nn行,分別表示這nn個物品的各自體積 輸出格式 11個整數,表示...

NOIP 2001 裝箱問題 DP

題目描述 有乙個箱子容量為v 正整數,0 v 20000 同時有n個物品 0輸入 每個測試檔案只包含一組測試資料,每組輸入的第一行為乙個整數v 0 v 20000 表示箱子的容量。第二行輸入乙個整數n 0輸出 對於每組輸入資料,輸出乙個整數,表示箱子剩餘空間。分析 01揹包的變形,將每個物品的體積同...