zoukankan      html  css  js  c++  java
  • hdu 悼念512汶川大地震遇难同胞——珍惜现在,感恩生活(多重背包)

    http://acm.hdu.edu.cn/showproblem.php?pid=2191
    
    #include<stdio.h>
    #include<iostream>
    #include<string.h>
    using namespace std;
    const int N=1000;
    int w[N],val[N],dp[N],num[N];
    int main()
    {
        int c,n,m,i,j,k;
        scanf("%d",&c);
        while(c--)
        {
            scanf("%d%d",&n,&m);
            for(i=1;i<=m;i++)
            {
                scanf("%d%d%d",&w[i],&val[i],&num[i]);
            }
            memset(dp,0,sizeof(dp));
            for(i=1;i<=m;i++)
            {
                for(j=1;j<=num[i];j++)
                {
                    for(k=n;k>=w[i];k--)
                    dp[k]=max(dp[k],dp[k-w[i]]+val[i]);
                }
            }
            printf("%d\n",dp[n]);
        }
    }
    

      

  • 相关阅读:
    wc
    1.11考试
    diff
    C++11新利器
    vimdiff
    [学习笔记]多项式
    rev
    [AH2017/HNOI2017]礼物
    tr
    bzoj2555: SubString
  • 原文地址:https://www.cnblogs.com/acSzz/p/2410258.html
Copyright © 2011-2022 走看看