1411102159 ny 揹包問題

2021-06-26 22:45:47 字數 698 閱讀 4551

時間限制:

3000 ms  |  記憶體限制:

65535 kb

難度:3 描述

現在有很多物品(它們是可以分割的),我們知道它們每個物品的單位重量的價值v和重量w(1<=v,w<=10);如果給你乙個揹包它能容納的重量為m(10<=m<=20),你所要做的就是把物品裝到揹包裡,使揹包裡的物品的價值總和最大。

輸入第一行輸入乙個正整數n(1<=n<=5),表示有n組測試資料;

隨後有n測試資料,每組測試資料的第一行有兩個正整數s,m(1<=s<=10);s表示有s個物品。接下來的s行每行有兩個正整數v,w。

輸出輸出每組測試資料中揹包內的物品的價值和,每次輸出佔一行。

樣例輸入

1

3 15

5 10

2 83 9

樣例輸出

65
解題思路

按照單位重量排序,然後開始存放就好。

**

#include#includeusing namespace std;

struct bao

baos[15];

bool cmp(bao a,bao b)

int main()

else

}printf("%d\n",sum);

} return 0;

}

NY106 揹包問題

時間限制 3000 ms 記憶體限制 65535 kb 難度 3 描述 現在有很多物品 它們是可以分割的 我們知道它們每個物品的單位重量的價值v和重量w 1 v,w 10 如果給你乙個揹包它能容納的重量為m 10 m 20 你所要做的就是把物品裝到揹包裡,使揹包裡的物品的價值總和最大。輸入第一行輸入...

ny860 又見01揹包

時間限制 1000 ms 記憶體限制 65535kb 難度 3 描述有n 個重量和價值分別為 wi 和 vi 的 物品,從這些物品中選擇總重量不超過w 的物品,求所有挑選方案中物品價值總和的最大值。1 n 100 1 wi 10 7 1 vi 100 1 w 10 9 輸入 多組測試資料。每組測試資...

揹包問筆記1

01揹包揹包總容量為v 12,5個物品,體積 價值各不同。如何取使得價值最大?答案 21 二維陣列方法 include using namespace std int dp 7 13 struct wupwup 7 voiddp else dp i j dp i 1 j intmain 一維陣列方法...