#40. 维护全序集
维护全序集
题目描述
这是一道模板题,其数据比「普通平衡树」更强。
如未特别说明,以下所有数据均为整数。
维护一个多重集 ,初始为空,有以下几种操作:
- 把 加入
- 删除 中的一个 ,保证删除的 一定存在
- 求 中第 小
- 求 中有多少个元素小于
- 求 中小于 的最大数
- 求 中大于 的最小数
操作共 次。
输入格式
第一行一个整数 ,表示共有 次操作 。
接下来 行,每行为以下几种格式之一 :
0 x
,把 加入1 x
,删除 中的一个 ,保证删除的数在 中一定存在2 k
,求 中第 小的数,保证要求的数在 中一定存在3 x
,求 中有多少个数小于4 x
,求 中小于 的最大数,如果不存在,输出5 x
,求 中大于 的最小数,如果不存在,输出
输出格式
对于每次询问,输出单独一行表示答案。
样例
5
0 3
0 4
2 2
1 4
3 3
4
0
数据范围与提示
$ 1 \leq n \leq 3 \times 10 ^ 5, 0 \leq x \leq 10 ^ 9 $