luogu#P6136. 【模板】普通平衡树(数据加强版)
【模板】普通平衡树(数据加强版)
题目背景
本题是 P3369 数据加强版,扩大数据范围并增加了强制在线。
题目的输入、输出和原题略有不同,但需要支持的操作相同。
题目描述
您需要写一种数据结构(可参考题目标题),来维护一些整数,其中需要提供以下操作:
- 插入一个整数 。
- 删除一个整数 (若有多个相同的数,只删除一个)。
- 查询整数 的排名(排名定义为比当前数小的数的个数 )。
- 查询排名为 的数(如果不存在,则认为是排名小于 的最大数。保证 不会超过当前数据结构中数的总数)。
- 求 的前驱(前驱定义为小于 ,且最大的数)。
- 求 的后继(后继定义为大于 ,且最小的数)。
本题强制在线,保证所有操作合法(操作 保证存在至少一个 ,操作 保证存在答案)。
输入格式
第一行两个正整数 ,表示初始数的个数和操作的个数。
第二行 个整数 ,表示初始的数。
接下来 行,每行有两个整数 和 , 表示操作的序号(), 表示加密后的操作数。
我们记 表示上一次 操作的答案,则每次操作的 都要异或上 才是真实的 。初始 为 。
输出格式
输出一行一个整数,表示所有 操作的答案的异或和。
6 7
1 1 4 5 1 4
2 1
1 9
4 1
5 8
3 13
6 7
1 4
6
提示
样例解释
样例加密前为:
6 7
1 1 4 5 1 4
2 1
1 9
4 1
5 9
3 8
6 1
1 0
限制与约定
对于 的数据,,,。
本题输入数据较大,请使用较快的读入方式。
:新增加 组 Hack 数据。