rt。样例都没过qwq
#include <bits/stdc++.h>
using namespace std;
const int N=1e5+5;
int n,cnt,q[N],a[N],t[N],tr[N];
inline int lowbit(int x){return x&-x;}
inline int work(int x){return lower_bound(tr+1,tr+1+cnt,x)-tr;}
inline void add(int x,int k) {
for(int i=x;i<=cnt;i++)
t[i]+=k;
}
inline int gts(int x) {
int res=0;
for(int i=x;i;i-=lowbit(i))
res+=t[i];
return res;
}
int kth(int k) {
int x=0;
for(int i=log2(cnt);i;i--) {
x+=1<<i;
if(x>cnt||t[x]>=k) x-=1<<i;
else k-=t[x];
}
return tr[x+1];
}
signed main() {
cin>>n;
for(int i=1;i<=n;i++) {
cin>>q[i]>>a[i];
if(q[i]!=4) tr[++cnt]=a[i];
}
sort(tr+1,tr+1+cnt);
cnt=unique(tr+1,tr+1+cnt)-(tr+1);
for(int i=1;i<=n;i++) {
if(q[i]==1) add(work(a[i]),1);
else if(q[i]==2) add(work(a[i]),-1);
else if(q[i]==3) cout<<gts(work(a[i])-1)+1<<'\n';
else if(q[i]==4) cout<<kth(a[i])<<'\n';
else if(q[i]==5) cout<<kth(gts(work(a[i])-1))<<'\n';
else if(q[i]==6) cout<<kth(gts(work(a[i]))+1)<<'\n';
}
return 0;
}