#39810: 求解錯在哪裡


buanyz03 (張晁瑋)

學校 : 新北市立板橋高級中學
編號 : 2629
來源 : [114.25.190.198]
最後登入時間 :
2023-09-06 15:43:50
b354. 药水 -- zzy7的2014模拟赛 | From: [203.69.87.1] | 發表日期 : 2024-04-02 11:01

#include <iostream>
using namespace std;

struct water
{
    int c,w;
};
int main()
{
    int red[10001],blue[10001],m1,m2,n,A,B,r_c,b_c;
    water r[10001],b[10001];

    cin>>n>>m1>>m2;
    for(int i=0;i<m1;++i)
    {
        cin>>r[i].c>>r[i].w;
    }

    for(int i=0;i<m2;++i)
    {
        cin>>b[i].c>>b[i].w;
    }
    cin>>A>>B;

    for(int i=0;i<=n;++i)
    {
        red[i]=0;
    }

    for(int i=0;i<m1;++i)
    {
       for(int j=n;j>=r[i].c;--j)
       {
            red[j]=max(red[j],red[j-r[i].c]+r[i].w);
       }
    }

    for(int i=0;i<=n;++i)
    {
        blue[i]=0;
    }

    for(int i=0;i<m2;++i)
    {
       for(int j=n;j>=r[i].c;--j)
       {
            blue[j]=max(blue[j],blue[j-r[i].c]+r[i].w);
       }
    }

    for(int i=0;i<n;++i)
    {
       if(red[i]>=A)
       {
           r_c=i;
           break;
       }
    }

    for(int i=0;i<n;++i)
    {
       if(blue[i]>=B)
       {
           b_c=i;
           break;
       }
    }

    if(r_c+b_c>n)
    {
        cout<<"GG"<<endl;
    }
    else
    {
        cout<<r_c+b_c<<endl;
    }
}

 
ZeroJudge Forum