P5661 RE 45pts 求助(给关)
查看原帖
P5661 RE 45pts 求助(给关)
743879
Guo1楼主2024/7/31 19:26
#include<iostream>
#define int long long
using namespace std;
struct A
{
    int pr,ti,vis;
}q[1000002];
int hd,t,n,ans,op,pri;
signed main()
{
    cin>>n;
    for(int i=0;i<n;i++)
	{
        cin>>op>>pri>>t;
        if(op==0)
		{
            ans+=pri;
            q[t].ti=t+45;
            q[t++].pr=pri;
        }
		else
		{
            while(hd<t&&q[hd].ti<t) hd++;
            bool f=0;
            for(int j=hd;j<t;j++)
			{
                if(q[j].pr>=pri&&q[j].vis==0)
				{
                    f=1;
                    q[j].vis=1;
                    break;
                }
            }
            if(!f) ans+=pri;
        }
    }
    cout<<ans<<endl;
    return 0;
}
2024/7/31 19:26
加载中...