找一个最小的r加进集合
#include <cstdio>
#include <algorithm>
#include<iostream>
#define maxn 1000000
#include<set>
using namespace std;
int n;
struct node{
int s,t;
bool operator<(const node &v)const{
if(t==v.t)
return s<v.s;
return t<v.t;
}
};
set <node> c;
int main()
{
scanf("%d",&n); set<node>::iterator w;
for(int i=1;i<=n;i++)
{
char b;int s,t;
cin>>b;
if(b=='A')
{
scanf("%d%d",&s,&t);
int cnt=0;
while(1){
w=c.lower_bound((node){0,s});
if(w!=c.end()&&t>=w->s)
{
c.erase(w);
cnt++;
continue;
}
c.insert((node){s,t});
break;
}
printf("%d\n",cnt);
}
else printf("%d\n",c.size());
}
}