wa了一个点

P1064 [NOIP2006 提高组] 金明的预算方案

天梦 @ 2019-11-05 18:47:16

#include<iostream>
#include<algorithm>
using namespace std;
int w[32001][3];
int z[32001][3];
int f[32001];
int n,m;
void intt()
{
    cin>>n>>m;
    for(int i=1;i<=m;i++)   
    {
        int a,b,c;
        cin>>a>>b>>c;
        if(c==0)
        {
            w[i][0]=a;
            z[i][0]=b;
        }
        else
        {
            if(w[c][1]==0)
            {
                w[c][1]=a;
                z[c][1]=b;
            }
            else
            {
                w[c][2]=a;
                z[c][2]=b;
            }
        }
    }
}
int main()
{
    intt();

    for(int i=1;i<=m;i++)
    {
        for(int j=n;j>=0;j--)
        {
            if(j>=w[i][0])  f[j]=max(f[j],f[j-w[i][0]]+w[i][0]*z[i][0]);
            if(j>=w[i][0]+w[i][1])  f[j]=max(f[j],f[j-w[i][0]-w[i][1]]+w[i][0]*z[i][0]+w[i][1]+z[i][1]);
            if(j>=w[i][0]+w[i][2])  f[j]=max(f[j],f[j-w[i][0]-w[i][2]]+w[i][0]*z[i][0]+w[i][2]+z[i][2]);
            if(j>=w[i][0]+w[i][1]+w[i][2])  f[j]=max(f[j],f[j-w[i][0]-w[i][1]-w[i][2]]+w[i][0]*z[i][0]+w[i][1]*z[i][1]+w[i][2]*z[i][2]);
        }
    }
    cout<<f[n];
}

by 天梦 @ 2019-11-05 18:47:41

啊啊啊啊,我在绝望了!!!!!!


by 拨云见日 @ 2019-11-05 18:51:44

绿题太难了,不会(


by 汪之常清 @ 2019-11-05 18:52:39

啊,我也是


|