pbds平衡树整理

Posted yuhuger

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了pbds平衡树整理相关的知识,希望对你有一定的参考价值。

#include <bits/stdc++.h>
#include <bits/extc++.h>
using namespace std;
using namespace __gnu_pbds;
typedef pair<int,int> pii;
tree<pii,null_type,less<pii>,rb_tree_tag,tree_order_statistics_node_update> bbt;
int n;
int main(){
	scanf("%d",&n);
	for (int i=1,opt,k; i<=n; ++i){
		scanf("%d%d",&opt,&k);
		if (opt==1) bbt.insert(make_pair(k,i));
		if (opt==2) bbt.erase(bbt.lower_bound(make_pair(k,0)));
		if (opt==3) printf("%d
",bbt.order_of_key(make_pair(k,0))+1);
		if (opt==4){
			auto t=*bbt.find_by_order(k-1);
			printf("%d
",t.first);
		}
		if (opt==5){
			ans=*--bbt.lower_bound(make_pair(k,0));
			printf("%d
",ans);
		}
		if (opt==6){
			ans=*bbt.upper_bound(make_pair(k,n));
			printf("%d
",ans);
		}
	}
}

洛谷P3369

以上是关于pbds平衡树整理的主要内容,如果未能解决你的问题,请参考以下文章

luogu P3369 模板普通平衡树(Treap/SBT) 题解 pb_ds

带你整理面试过程中关于 二叉树二叉搜索树平衡二叉树B 树和 B+树的相关知识

入门Splay--tarjan大佬的又一发明

数据结构之二叉搜索树AVL自平衡树

索引碎片检测和整理

pbds(平板电视)?