WA的
#include<bits/stdc++.h>
using namespace std;
long long n,x,y,z,j,t,sum;
long long a[100001],b[100002];
bool f;
int ta;
int tal;
int main()
{
scanf("%lld",&n);
for (long long i=1;i<=n;i++)
{
scanf("%lld%lld%lld",&x,&y,&z);
if (x==0)
{
j++;
a[j]=y;
b[j]=z+45;
sum=sum+y;
}
else
{
f=true;
for(long long w=tal;w<=j;w++)
if (a[w]>=y && b[w]-z>=0)
{
f=false; b[w]=-1; break;
}
else if(b[w]-z<0)
{
ta++;
}
tal=ta;
if (f) sum+=y;
}
}
printf("%lld",sum);
return 0;
}
超时的
#include<bits/stdc++.h>
using namespace std;
long long n,x,y,z,j,t,sum;
long long a[100001],b[100001];
bool f;
int main()
{
scanf("%lld",&n);
for (long long i=1;i<=n;i++)
{
scanf("%lld%lld%lld",&x,&y,&z);
if (x==0)
{
j++;
a[j]=y;
b[j]=z+45;
sum=sum+y;
}
else
{
f=true;
for(long long w=1;w<=j;w++)
if (a[w]>=y && b[w]-z>=0)
{
f=false; b[w]=0; break;
}
if (f) sum+=y;
}
}
printf("%lld",sum);
return 0;
}