浏览器标题切换
浏览器标题切换end

HDU2191 - 悼念512汶川~ - 多重背包模板题

思路

中文模板题,不解释了。

AC代码

//多重背包
#include<stdio.h>
#include<string.h>
#include<algorithm>
using namespace std;
int dp[110],p[110],w[110],daishu[110];
int main()
{
    int n,m,i,j,k,t;
    while(~scanf("%d",&t))
    {
        while(t--)
        {
            memset(dp,0,sizeof(dp));
            scanf("%d %d",&m,&n);
            for(i=0; i<n; i++)
            {
                scanf("%d %d %d",&p[i],&w[i],&daishu[i]);
            }
            for(i=0; i<n; i++) //大米种类
            {
                for(j=0; j<daishu[i]; j++)//每种大米的袋数
                {
                    for(k=m; k>=p[i]; k--)//从总金额开始
                        dp[k]=max(dp[k],dp[k-p[i]]+w[i]);

                }
            }
            printf("%d\n",dp[m]);
        }
        return 0;
    }
}
posted @ 2020-10-16 17:04  抓水母的派大星  阅读(66)  评论(0编辑  收藏  举报