Splay树(区间更新)—— POJ 3468 A Simple Problem with Integers...
分类:
其他好文 时间:
2015-06-13 17:12:59
阅读次数:
146
Splay树——HDU 3487 Play with Chain...
分类:
其他好文 时间:
2015-06-05 10:26:11
阅读次数:
125
splay伸展树主要有两种操作形式
(1)正常的二叉树插入形式
功能:a、查找 b、求最大值 c、最小值 d、求前驱 e、求后继 f、删点 g、合并splay树
(这里的删除直接利用splay树的结点下标)
(2)区间形式 (插入是以区间形式插入的)
区间形式的伸展树相当于线段树,支持线段树的所有操作,并且还支持区间插入这个功能,
比如操作区间[a,b]...
分类:
其他好文 时间:
2015-05-25 16:36:14
阅读次数:
126
题目大意不多说了貌似每个苦逼的acmer都要做一下这个splay树的模版题目吧还是有很多操作的,估计够以后当模版了。。。。 1 #include 2 #include 3 #include 4 #include 5 #include 6 7 using namespace ...
分类:
其他好文 时间:
2015-04-22 01:49:43
阅读次数:
228
题目大意:给4种操作I:添加一个员工工资信息A:增加所有员工的工资S:减少所有员工的工资F:询问工资第k高的员工的工资情况自己做的第一道splay树的题目,初学找找感觉 1 #include 2 #include 3 #include 4 5 using namespace std...
分类:
其他好文 时间:
2015-04-20 20:34:36
阅读次数:
172
一摞书,2个操作,一个操作是在书堆上加一本,第二个将前K个书翻转
看别人用Splay树做的,但是可以用双端队列模拟,因为K个书之后的书位置已经定下来了,所以只需要记录在队列头加书还是尾加书
#include
#include
#include
#include
#include
#include
#include
using namespace std;
int main(){
int...
分类:
其他好文 时间:
2015-03-31 14:47:11
阅读次数:
123
最近做的一些Splay题及思路
BZOJ 1588
就是求一个数的前驱和后继,用Splay很简单
POJ 3468
很经典的线段树题目,用Splay做练习懒惰标记
HDU 1890
涉及区间翻转,注意直接以数列下标建树,对原数列排序后,直接查找,找到后删除。
HDU 3436
很好的一道题,首先离散化,Splay
树中每个节点表示的是一段区间...
分类:
其他好文 时间:
2015-03-06 22:15:03
阅读次数:
287
题目:http://www.lydsy.com/JudgeOnline/problem.php?id=1269大致思路:用splay维护整个文本信息,splay树的中序遍历即为该文本。收获:1、可以先在文本开始和结尾个插入一个节点,然后每次操作都适当调整位置,这样可以减少特判(插入一段文本到0位置,...
分类:
其他好文 时间:
2015-02-06 18:19:11
阅读次数:
93
题意:给定一个带点权的无向图,有两种操作: 1、将两个连通分量合并。 2、查询某个连通分量里的第K大点。题解:用并查集维护连通关系,一开始建立n棵splay树,然后不断合并,查询。处理技巧: 1、每个顶点u所在的Splay就是T[find(u)]。 2、每个顶点在树中对应的节点编号就是该顶点...
分类:
其他好文 时间:
2015-02-05 20:24:24
阅读次数:
410