背包问题,动态规划
阅读量:4209 次
发布时间:2019-05-26
本文共 545 字,大约阅读时间需要 1 分钟。
将下面四个重量的物品1,2,2,3 价值分别是9,3,3,6 装进 重量为4的背包中,使得背包的重量不超过4,并且价值最大。
#include #include #include
weights={0,1,2,2,3}; vector
value={0,9,3,3,6}; vector
> v(5,vector (5,0)); int n=4; int m=4; for(int i=1;i<=n;i++){ for(int j=1;j<=m;j++){ if(weights[i]>j){ v[i][j]=v[i-1][j]; }else{ int v1=v[i-1][j]; int v2=v[i-1][j-weights[i]]+value[i]; v[i][j]=max(v1,v2); } } } cout< < 转载地址:http://hbwmi.baihongyu.com/