hdu 2191 (多重背包)悼念512汶川大地震遇难同胞——珍惜现在,感恩生活

来源:互联网 发布:甩狗头的软件 编辑:程序博客网 时间:2024/05/16 18:07
#include <iostream>using namespace std;int max(int a,int b){return a>b?a:b;}int main(){int n,m;int dp[105],price[105],w[105],num[105];int c;scanf("%d",&c);while(c--){scanf("%d %d",&n,&m);for(int i=0;i<m;i++)scanf("%d %d %d",&price[i],&w[i],&num[i]);for(int i=0;i<=n;i++)dp[i]=0;for(int i=0;i<m;i++){int cnt=1;for(;cnt<=num[i];cnt++)for(int j=n;j>=price[i];j--)dp[j]=max(dp[j],dp[j-price[i]]+w[i]);}printf("%d\n",dp[n]);}return 0;}