treap
sadnohappy
这个作者很懒,什么都没留下…
展开
-
非旋treap学习小记
说在前面 搁了很久的坑,终于遇到题目可以学一发。 听说这玩意除了LCT,几乎完爆同是维护平衡树的splay,好像LCT也可以用treap实现 Treap 顾名思义就是Tree+Heap,即树堆,既有二叉查找树的性质也有堆的性质,通常利用中序遍历的顺序和堆的高度为logloglog来解决许多问题,属于平衡树的一类。 本质上就是笛卡尔树,每个点有两个权值val,keyval,keyval,key,va...原创 2018-10-24 16:54:32 · 1573 阅读 · 0 评论 -
【JZOJ5924】Queue
Description 给一个序列,支持区间轮换(即末尾的一个数挪到开头),查询区间等于k的有多少个。 Solution 分块,记si,js_{i,j}si,j为第iii块jjj出现的次数,每个块维护一个链表,修改就是对O(n)O(\sqrt n)O(n)的块进行修改,用deque实现非常方便。 当然也可以打非旋转Treap,每个点维护权值线段树,合并的时候向上线段树合并。 也有离线做法,先用...原创 2018-10-24 21:51:53 · 216 阅读 · 0 评论