题目
样例过了,但是满江红,为什么呢??
#include <bits/stdc++.h>
using namespace std;
vector<int> tick;
int c[100001];
int main()
{
int n;
cin >> n;
int ans=0;
for (int i = 1; i <= n; i++)
{
int a, b;
cin >> a >> b >> c[i];
if (a==0)
{
ans+=b;
tick.push_back(b);
}
else
{
if (c[i]-c[i-1]>45)
{
tick.erase(tick.begin());
ans+=b;
}
else
{
bool flag=false;
for (int i = 0; i < tick.size(); i++)
{
if (tick[i]>=b)
{
tick.erase(tick.begin()+i);
flag=true;
break;
}
}
//cout << flag << endl;
if (!flag) ans+=b;
}
}
//cout << ans << endl;
}
cout << ans;
return 0;
}
求调!thx!