20分求助
查看原帖
20分求助
428690
Astatinear楼主2021/8/16 16:33

各位dalaodalao帮我看看为什么2020

#include<iostream>
using namespace std;
int k,c[25];
int x,p[5];
int t,s[25];
int buy[25];
int ans;
int main()
{
    cin>>k;
    for(int i=1;i<=k;++i)
    {
        cin>>c[i];
    }
    cin>>x>>p[1]>>p[2]>>p[3]>>p[4];
    cin>>t;
    for(int i=1;i<=t;++i)
    {
        cin>>s[i];
        buy[s[i]]++;
    }
    while(1)
    {
        int tot=0;
        for(int i=1;i<=4;++i)
        {
            tot+=min(buy[p[i]],1)*c[i];
        }
        if(tot>x)
        {
            for(int i=1;i<=4;++i)
            {
                buy[p[i]]=max(buy[p[i]]-1,0);
            }
            ans+=x;
        }
        else
        {
            break;
        }
    }
    for(int i=1;i<=k;++i)
    {
        ans+=buy[i]*c[i];
    }
    cout<<ans<<endl;
}

2021/8/16 16:33
加载中...