悼念512汶川大地震遇难同胞——珍惜现在,感恩生活(复习多重背包)
Posted 小时のblog
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了悼念512汶川大地震遇难同胞——珍惜现在,感恩生活(复习多重背包)相关的知识,希望对你有一定的参考价值。
悼念512汶川大地震遇难同胞——珍惜现在,感恩生活
【题目大意】
在资金一定的情况下,给出救难用的每袋大米的重量,价格,袋数。求购买大米的最终重量。
【思路】多重背包。
【复习】多重背包特点。
题目
有N种物品和一个容量为V的背包。第i种物品最多有n[i]件可用,每件费用是c[i],价值是w[i]。求解将哪些物品装入背包可使这些物品的费用总和不超过背包容量,且价值总和最大。
【code】
#include<iostream> #include<cstdio> #include<cstring> using namespace std; int t,mon,k,w[102],pri[102],f[102],cnt[102]; int main() { scanf("%d",&t); while(t--) { memset(f,0,sizeof(f)); scanf("%d%d",&mon,&k); for(int i=1;i<=k;i++) scanf("%d%d%d",&pri[i],&w[i],&cnt[i]); for(int i=1;i<=k;i++) { for(int j=mon;j>=pri[i];j--) { for(int h=0;h<=cnt[i];h++) { if(j-h*pri[i]<0)break; f[j]=max(f[j],f[j-h*pri[i]]+h*w[i]); } } } printf("%d\n",f[mon]); } return 0; }
以上是关于悼念512汶川大地震遇难同胞——珍惜现在,感恩生活(复习多重背包)的主要内容,如果未能解决你的问题,请参考以下文章
悼念512汶川大地震遇难同胞——珍惜现在,感恩生活(复习多重背包)
多重背包HDU 2191 悼念512汶川大地震遇难同胞——珍惜现在,感恩生活
HDU 2191 HDU 2191 悼念512汶川大地震遇难同胞――珍惜现在,感恩生活 (01背包入门)
(多重背包)hdu--2191--悼念512汶川大地震遇难同胞——珍惜现在,感恩生活