D: 普通平衡树

1004: 普通平衡树

Time Limit: 2 Sec  Memory Limit: 128 MB   64bit IO Format: %lld
Submitted: 0  Accepted: 0
[Submit][Status][Web Board]

Description

您需要写一种数据结构(可参考题目标题),来维护一些数,其中需要提供以下操作:
(1)插入 x 数;
(2)删除 x 数(若有多个相同的数,应只删除一个);
(3)查询 x 数的排名(若有多个相同的数,应输出最小的排名);
(4)查询排名为 x 的数;
(5)求 x 的前趋(前趋定义为小于 x,且最大的数);
(6)求 x 的后继(后继定义为大于 x,且最小的数)。

Input

多组测试数据,每组测试数据的输入格式描述如下:

第一行为 n,表示操作的个数;
下面 n 行每行有两个数 opt 和 x,opt 表示操作的序号(1≤opt≤6)。
1≤n≤105,−107≤x≤107

Output

每组测试数据,对于操作 3、4、5、6 每行输出一个数,表示对应答案。

Sample Input

10
1 106465
4 1
1 317721
1 460929
1 644985
1 84185
1 89851
6 81968
1 492737
5 493598

Sample Output

106465
84185
492737

[Submit][Status][Web Board]