dp入门
01背包
自顶向下。
1 for(int i=1;i<=n;i++){ 2 for(int j=m;j>0;j--){ 3 if(j>=cow[i].w) 4 dp[j]=max(dp[j],dp[j-cow[i].w]+cow[i].v); 5 } 6 } 7 ///m为容量,w为重量,v为价值
完全背包
自底向上
1 for(int i=1;i<=n;i++){ 2 for(int j=w[i];j<=m;j++){ 3 dp[j]=max(dp[j],dp[j-w[i]]+v[i]); 4 } 5 }