![](https://cdn.luogu.com.cn/upload/image_hosting/ts4gu3ww.png)
by HS_xh @ 2023-11-03 19:57:31
喂喂喂,你们没完了是吧,举报举报全部举报(部分不用)
by HS_xh @ 2023-11-03 19:58:52
标题说平衡树,正文说线段树
by int_R @ 2023-11-03 20:14:21
平衡树能用线段树做???
by Night_sea_64 @ 2023-11-03 20:21:53
但代码是平衡树
by 朦胧_XY @ 2023-11-03 20:22:25
给你看个代码,让你吐血:
```cpp
#include<bits/stdc++.h>
#include<ext/pb_ds/tree_policy.hpp>
#include<ext/pb_ds/assoc_container.hpp>
using namespace std;
using namespace __gnu_pbds;
long long n,opt,x,res;
tree<long long,null_type,less<long long>,rb_tree_tag,tree_order_statistics_node_update>PHS;
int main(){
ios::sync_with_stdio(false);
cin.tie(0);cout.tie(0);
cin>>n;
for(int i=1;i<=n;i++){
cin>>opt>>x;
switch(opt){
case 1:
PHS.insert((x<<25)+i);
break;
case 2:
PHS.erase(PHS.lower_bound(x<<25));
break;
case 3:
cout<<PHS.order_of_key((x<<25))+1<<"\n";
break;
case 4:
cout<<((*PHS.find_by_order(x-1))>>25)<<"\n";
break;
case 5:
cout<<((*(--PHS.lower_bound((x<<25))))>>25)<<"\n";
break;
case 6:
cout<<((*PHS.upper_bound(((x<<25)+n)))>>25)<<"\n";
break;
}
}
}
```
这是本题正解。
by CEFqwq @ 2023-11-03 20:22:39
@[tlxjy](/user/482610) !这是什么科技?考场能用吗?
by 朦胧_XY @ 2023-11-03 20:26:52
@[朦胧_XY](/user/358971) 能
by CEFqwq @ 2023-11-03 20:28:18
QAQ我用Treap把这道题A掉了但是刚学Splay就来做这道题了QAQ然后TLE了
by Vsinger_洛天依 @ 2023-11-03 20:28:42
@[tlxjy](/user/482610) Orz
by 朦胧_XY @ 2023-11-03 20:28:55