标签:之间 terminal min lob arm www bsp blob strong
for(int i=0;i<n;i++){//考虑前i个物品 for(int j=m;j>=0;j--){//考虑背包承重为j的时候 if(j>=w[i]){//如果物品能够放进背包 dp[j] = max(dp[j],dp[j-w[i]]+v[i]);//考虑放与不放的最大值 } } }
for(int i=0;i<n;i++){ //考虑前i个物品 for(int j=0;j<=m;j++){//考虑背包称重为j 的时候 if(j>=w[i]){ //如果物品能够放进去 dp[j] = min(dp[j],dp[j-w[i]]+v[i]); } } }
for(int i=0;i<m;i++){//拆分 int temp = 1; int num,volumn,value; cin>>num>>volumn>>value; while(num-temp>0){ g[cnt].volumn = temp*volumn; g[cnt].value = temp*value; cnt++; num = num - temp; temp = temp*2; } g[cnt].volumn = num*volumn; g[cnt].value = num*value; cnt++; } for(int i=0;i<cnt;i++){ for(int j=v;j>=g[i].volumn;j--){ dp[j] = max(dp[j],dp[j-g[i].volumn]+g[i].value); } }
标签:之间 terminal min lob arm www bsp blob strong
原文地址:https://www.cnblogs.com/cyj1258/p/12153804.html