
Treap平衡树
maze_illusion
这个作者很懒,什么都没留下…
展开
-
BZOJ 3224 Treap平衡树
题目链接题意:您需要写一种数据结构(可参考题目标题),来维护一些数,其中需要提供以下操作:1. 插入x数2. 删除x数(若有多个相同的数,因只删除一个)3. 查询x数的排名(若有多个相同的数,因输出最小的排名)4. 查询排名为x的数5. 求x的前驱(前驱定义为小于x,且最大的数)6. 求x的后继(后继定义为大于x,且最小的数)思路:Treap平衡树模板题C++代码:...原创 2018-07-31 12:23:27 · 231 阅读 · 0 评论 -
POJ 3580 FHQ_Treap平衡树
题目链接题意:给一个长度为n的数组,初始为a1,...,an需要维护以下操作:ADD l r x:给区间[l,r]上的所有元素+xREVERSE l r:反转区间[l,r](比如:[1,2,3]反转后变成[3,2,1])REVOLVE l r x:将区间[l,r]向前循环右移x位(比如:[1,2,3]循环右移2位变成[2,3,1])INSERT P x:在位置P后插入一...原创 2018-08-02 14:46:12 · 402 阅读 · 0 评论 -
BZOJ 1251 FHQ_Treap平衡树
题目链接题意:给一个长度为n初始全为0的数组,维护三种操作:1 l r x:给区间[l,r]上每个元素都加上x2 l r:反转区间[l,r](比如:[1,2,3]反转后变成[3,2,1])3 l r:输出区间[l,r]的最大值思路:FHQ_Treap平衡树的多种操作C++代码:#include<map>#include<set>#i...原创 2018-08-02 15:25:11 · 207 阅读 · 0 评论 -
BZOJ 3223 FHQ_Treap平衡树
题目链接题意:给定一个长度为n的数组,初始为1,..,n,求经过m次反转操作后数组思路:FHQ_Treap平衡树操作C++代码:#include<map>#include<set>#include<stack>#include<cmath>#include<queue>#include<vecto...原创 2018-08-02 15:56:25 · 218 阅读 · 0 评论 -
BZOJ 1500 FHQ_Treap平衡树
题目链接题意:初始给一个长度为n的数组,维护以下操作:1.插入一段数字:p tot a1...atot表示在位置p后面插入tot个数字2.删除一段数字:p tot表示在位置p开始删除tot个数字3.修改一段数字:p tot c表示在位置p开始修改tot个数字为c4.反转一段数字:p tot表示将在位置p开始长度为tot的区间反转5.求和一段数字:p tot表示求从位置p...原创 2018-08-03 11:31:40 · 295 阅读 · 0 评论