hdu 3466 01背包

来源:互联网 发布:logback 打印sql参数 编辑:程序博客网 时间:2024/05/16 00:55
#include<iostream>using namespace std;#include<cstdio>#include<cstring>#include<algorithm>struct item{    int p,q,v;    bool operator < (const item it) const    {        return q-p<it.q-it.p;    } }ll[510];int dp[5100];int main(){    int n,m;    while(scanf("%d%d",&n,&m)!=EOF)    {        memset(dp,0,sizeof(dp));        int i,j;        for(i=0;i<n;i++)        {            cin>>ll[i].p>>ll[i].q>>ll[i].v;        }        sort(ll,ll+n);        for(i=0;i<n;i++)        {            for(j=m;j>=ll[i].p;j--)            {                if(j>=ll[i].q)                {                    dp[j]=max(dp[j],dp[j-ll[i].p]+ll[i].v);                }            }        }        cout<<dp[m]<<endl;    }    return 0;}