題目連結:
題目大意:
第一列給定兩正整數 N 、 m (N < 30000 , m < 25),代表預算 N 元,且有 m 個物品。接著有 m 列輸入,每列給定兩正整數 v 、 p (v ≦ 10000 , 1 ≦ p ≦ 5),代表一個物品的價格以及重要度。
在挑選出的物品之總價格不超過 N 元的狀況下,那些物品的 v × p (價格乘以重要度)之總和最大為多少?
範例輸入:
1000 5
800 2
400 5
300 5
400 3
200 2
範例輸出:
3900
解題思維:
稍作變化的背包題,將每個物品的 p 值乘以其價格 v ,變為題目要求的 vp 後即等價於典型的背包問題。作法見
此題。
此次分享到此為止,如有任何更加簡潔的想法或是有說明不清楚之地方,也煩請各位大大撥冗討論。