description
乙個旅行者有乙個最多能裝m公斤的揹包,現有n件物品,它們的重量分別是w1,w2,w3,...,wn,它們的價值分別為c1,c2,c3,...,cn。若每種物品只有一件,求旅行者能獲得的最大總價值。
input
m,和n(m<=200, n<=30)
接下來共n行每行兩個整數wi,ci
output
最大總價值
sample input
10 4
2 1
3 3
4 5
7 9
解題思路:01揹包
ac**:
#include
using namespace std;
#define n 205
int dp[n],w[n],c[n];
int main()
dp[0]=0;
for(i=1;i<=n;i++)
}printf("%d\n",dp[m]);
}return 0;
}
01揹包入門
01揹包問題模型 有n件物品和乙個容量為v的揹包。第i件物品的費用是c i 價值是w i 求解將哪些物品裝入揹包可使價值總和最大。這是最基礎的揹包問題,特點是 每種物品僅有一件,可以選擇放或不放。用子問題定義狀態 即f i v 表示前i件物品恰放入乙個容量為v的揹包可以獲得的最大價值。則其狀態轉移方...
0 1揹包入門
有n個重量分別為w1 w2 w3 w4 wn的物品,編號1 n,它們的價值為v1 v2 v3 v4 vn。現有一容量為w的揹包,求盡可能的把揹包裝滿並使價值最大 下面不妨以 為例 物品編號 重量價值15 4234 3234 11思路大概是用蠻力法找出n的所有冪集,然後遍歷一遍,找到最優解 複雜度為o...
01揹包 DP入門
n個重量和價值分別為w,v的物品。找出總重量不超過w 的物品,求所有挑選方案中價值總和的最大值。n 4 w,v w 5 輸出 7 選0號,1號,3號 理解 n個物品 揹包容量w int w max n v max n weight,value 暴搜 o 2 n int rec int i,int j...