BZOJ3224 水题一样。 为了练习一下替罪羊树,用这个来搞了一发。 替罪羊树可以不需要旋转来保存平衡。 当然在这题还看不到他的优势。
3224: Tyvj 1728 普通平衡树
Time Limit: 10 Sec Memory Limit: 128 MB Submit: 1956 Solved: 769 [Submit][Status]
Description
您需要写一种数据结构(可参考题目标题),来维护一些数,其中需要提供以下操作: 1. 插入x数 2. 删除x数(若有多个相同的数,因只删除一个) 3. 查询x数的排名(若有多个相同的数,因输出最小的排名) 4. 查询排名为x的数 5. 求x的前驱(前驱定义为小于x,且最大的数) 6. 求x的后继(后继定义为大于x,且最小的数)
Input
第一行为n,表示操作的个数,下面n行每行有两个数opt和x,opt表示操作的序号(1<=opt<=6)
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
HINT
1.n的数据范围:n<=100000
2.每个数的数据范围:[-1e7,1e7]
Source
题意很简单。 直接替罪羊树练习了一发。
1 | /* *************** |