#include<iostream> #include<cstring> using namespace std; const int N = 100005; int tr[N]; int lowbit(int x) { return x&(-x); } void add(int x,int a) { for(int i=x;i<N;i+=lowbit(i)) tr[i]+= a; } int sum(int x) { int ans=0; for(int i=x;i;i-=lowbit(i)) ans+=tr[i]; return ans; } void bs(int a,int k) { int l=a+1,r=N; int temp=sum(a); while(l<=r) { int mid=l+r>>1; if(sum(mid)-temp<k) l=mid+1; else //有点懵 r=mid-1; } if(l>=N) printf("Not Find! "); else printf("%d ",l); } int main() { int m; while(~scanf("%d",&m)) { memset(tr,0,sizeof tr); while(m--) { int q,a,k; scanf("%d",&q); if(q==0) { scanf("%d",&a); add(a,1); } else if(q==1) { scanf("%d",&a); //如果存在 if(sum(a)-sum(a-1)) add(a,-1); else printf("No Elment! "); } else { scanf("%d%d",&a,&k); bs(a,k); } } } return 0; }