時間限制: 1 sec
記憶體限制: 128 mb
乙個旅行者有乙個最多能用m公斤的揹包,現在有n件物品,它們的重量分別是w1,w2,...,wn,它們的價值分別為 c1,c2,...,cn。若每種物品只有一件,求旅行者能獲得最大總價值。
第一行:兩個整數,m(揹包容量,m<=200)和n(物品數量,n<=30);
第2..n+1行:每行二個整數wi,ci,表示每個物品的重量和價值。
僅一行,乙個數,表示最大總價值。
10 42 13 3
4 57 9
12【題解】
就是0/1揹包,不過輸入比較蛋疼,先輸入m再輸入n。
複習一下0/1揹包的dp方程:f[i]=max(f[j-c[i]]+w[i]) j from m downto c[i].
1 #include2using
namespace
std;
3int f[700010],n,m,c[510],w[510];4
intmain()
揹包dp之01揹包
現在我們有n個配件,他們有不同的價值.但是我們揹包的容量是有限的,因為我們只有乙個一級包,所以我們最多可以裝v重量的東西.但是為了能更好的吃到雞 不存在的 我們要攜帶更有價值的配件,請問我們最多能拿多少價值的配件來當快遞員呢?輸入的第一行是t,表示有一共要打t場比賽.每組資料由三行組成.第一行包含兩...
Bone Collector(複習01揹包)
傳送門 題目大意 01揹包裸題。複習01揹包 題目有n件物品和乙個容量為v的揹包。第i件物品的費用是c i 價值是w i 求解將哪些物品裝入揹包可使這些物品的費用總和不超過揹包容量,且價值總和最大。題解 include include include using namespace std int ...
揹包dp之01揹包變形
一種雙核cpu的兩個核能夠同時的處理任務,現在有n個已知資料量的任務需要交給cpu處理,假設已知cpu的每個核1秒可以處理1kb,每個核同時只能處理一項任務。n個任務可以按照任意順序放入cpu進行處理,現在需要設計乙個方案讓cpu處理完這批任務所需的時間最少,求這個最小的時間。輸入描述 輸入包括兩行...