标签:
Input400
果题
#include<iostream> #include<cstdio> #include<cstring> using namespace std; int v,n; int p[110],w[110],c[110]; int dp[110]; int main() { int _; scanf("%d",&_); while(_--){ scanf("%d%d",&v,&n); memset(dp,0,sizeof(dp)); for(int i=1;i<=n;i++) scanf("%d%d%d",&p[i],&w[i],&c[i]); for(int i=1;i<=n;i++){ for(int k=1;c[i]>0;k<<=1){ int mul=min(k,c[i]); for(int j=v;j>=p[i]*mul;j--) dp[j]=max(dp[j],dp[j-p[i]*mul]+w[i]*mul); c[i]-=mul ; } } printf("%d\n",dp[v]); } return 0; }
2191 悼念512汶川大地震遇难同胞——珍惜现在,感恩生活 (多重背包 水)
标签:
原文地址:http://blog.csdn.net/kalilili/article/details/44467597