時間限制:
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。
輸出輸出每組測試資料中揹包內的物品的價值和,每次輸出佔一行。
樣例輸入
13 15
5 10
2 83 9
樣例輸出
65
//nyoj-揹包問題(貪心)
//題目大意:給你 s 個物品,及乙個能裝 m重量的揹包;接下來分別列出各物品的單位價值及物品的重量;
//求放入揹包裡的物品價值總和最大的值;
//解題思路:
//為了是放入書包的價值總和最大,首先應該把單位價值最大的物品全部放入書包(如果書包容量大於該物品的重量)
//其次,再放單位價值第二的物品,如此往復,直到書包放滿;
#include#include#includeusing namespace std;
struct nodeans[12]; //定義乙個結構體陣列,用來存放每個物品的單位價值和重量(即有多少該物品) ;
int cmp(node x,node y)
int main()
else
}printf("%d\n",sum);
} return 0;
}
NYOJ 106 揹包問題 貪心,水
時間限制 3000 ms 記憶體限制 65535 kb 難度 3 描述 現在有很多物品 它們是可以分割的 我們知道它們每個物品的單位重量的價值v和重量w 1 v,w 10 如果給你乙個揹包它能容納的重量為m 10 m 20 你所要做的就是把物品裝到揹包裡,使揹包裡的物品的價值總和最大。輸入第一行輸入...
NYOJ 106 揹包問題(經典貪心)
時間限制 3000 ms 記憶體限制 65535 kb 難度 3 描述 現在有很多物品 它們是可以分割的 我們知道它們每個物品的單位重量的價值v和重量w 1 v,w 10 如果給你乙個揹包它能容納的重量為m 10 m 20 你所要做的就是把物品裝到揹包裡,使揹包裡的物品的價值總和最大。輸入第一行輸入...
NYOJ 貪心演算法 106 揹包問題
時間限制 3000 ms 記憶體限制 65535 kb 難度 3 描述現在有很多物品 它們是可以分割的 我們知道它們每個物品的單位重量的價值v和重量w 1 v,w 10 如果給你乙個揹包它能容納的重量為m 10 m 20 你所要做的就是把物品裝到揹包裡,使揹包裡的物品的價值總和最大。輸入第一行輸入乙...