acwing2 01揹包問題

2022-02-23 10:45:04 字數 851 閱讀 7474

有n

'>n件物品和乙個容量是v

'>v的揹包。每件物品只能使用一次。

第i'>i件物品的體積是 v

i'>vi,價值是 w

i'>wi。

求解將哪些物品裝入揹包,可使這些物品的總體積不超過揹包容量,且總價值最大。

輸出最大價值。

輸入格式

第一行兩個整數,n,v

'>n,v

n,v,用空格隔開,分別表示物品數量和揹包容積。

接下來有 n

'>n

n 行,每行兩個整數 vi,

wi'>vi,wi

vi,wi,用空格隔開,分別表示第 i

'>i

i 件物品的體積和價值。

輸出格式

輸出乙個整數,表示最大價值。

資料範圍

0v≤1000

'>000,wi≤

1000

'>00輸入樣例

4 5

1 22 4

3 44 5

輸出樣例:
8

#include#include

using

namespace

std;

const

int maxn = 1005

;int w[maxn]; //

重量 int v[maxn]; //

價值 int f[maxn][maxn]; //

f[i][j], j重量下前i個物品的最大價值

intmain()

cout

}

AcWing 2 01揹包問題

題目描述 有 n 件物品和乙個容量是 v的揹包。每件物品只能使用一次。第 i件物品的體積是 vi,價值是 wi。求解將哪些物品裝入揹包,可使這些物品的總體積不超過揹包容量,且總價值最大。輸出最大價值。輸入格式 第一行兩個整數,n,v,用空格隔開,分別表示物品數量和揹包容積。接下來有 n行,每行兩個整...

acwing 2 01揹包問題

有 n 件物品和乙個容量是 v的揹包。每件物品只能使用一次。第 i件物品的體積是 vi,價值是 wi。求解將哪些物品裝入揹包,可使這些物品的總體積不超過揹包容量,且價值最大。輸出最大價值。輸入格式 第一行兩個整數,n,v,用空格隔開,分別表示物品數量和揹包容積。接下來有 n行,每行兩個整數 vi,w...

acwing 2 01揹包問題

有 n 件物品和乙個容量是 v 的揹包。每件物品只能使用一次。第 i 件物品的體積是 vi,價值是 wi。求解將哪些物品裝入揹包,可使這些物品的總體積不超過揹包容量,且總價值最大。輸出最大價值。輸入格式 第一行兩個整數,n,v,用空格隔開,分別表示物品數量和揹包容積。接下來有 n 行,每行兩個整數 ...