数据结构—Splay
文章平均质量分 50
slongle_amazing
这个作者很懒,什么都没留下…
展开
-
[BZOJ3223] Tyvj 1729 文艺平衡树
传送门http://www.lydsy.com/JudgeOnline/problem.php?id=3223题目大意[1,n],每次翻转[L,R],输出最后的序列题解Splay模板题 翻转标记下放注意的细节在code里 Splay第一题~~const maxn=100005;var w:array[-1..maxn,1..6]of longint; //1:左儿子 2:右儿子 3:父原创 2015-12-18 12:59:47 · 938 阅读 · 0 评论 -
[BZOJ3991] [SDOI2015]寻宝游戏
传送门http://www.lydsy.com/JudgeOnline/problem.php?id=3991题目大意给定一棵树,询问从某一关键点出发再回到该点遍历所有关键点的最短距离 支持加入1个和删除1个关键点题解首先最短路径一定是按照DFS序走 所以就动态维护关键点的DFS序就好了 (c++能用set!!我只好写了个SplayQAQAQAQ){$M 100000000,0,1000000原创 2016-03-06 13:57:16 · 921 阅读 · 0 评论 -
[BZOJ1604] [Usaco2008 Open]Cow Neighborhoods 奶牛的邻居
传送门http://www.lydsy.com/JudgeOnline/problem.php?id=1604题目大意给定n个点的坐标和C,若两个点间的曼哈顿距离≤C,就连一条边,询问联通块个数和最大联通块大小给定n个点的坐标和C,若两个点间的曼哈顿距离\le C,就连一条边,询问联通块个数和最大联通块大小题解曼哈顿距离转切比雪夫:(x,y)=(x+y,x−y)(x,y)=(x+y,x-y) 切比原创 2016-03-17 13:56:49 · 957 阅读 · 0 评论 -
[BZOJ1014] [JSOI2008]火星人prefix
传送门http://www.lydsy.com/JudgeOnline/problem.php?id=1014题目大意给定字符串,要求支持 1.求lcp 2.修改某一位字符 3.插入字符题解因为要插入,所以用Splay维护子树表示的字符串的HASH值,然后就是细节啦 求lcp二分即可const maxn=100010; seed=131; mmod=maxlongin原创 2016-02-13 23:38:51 · 528 阅读 · 0 评论 -
[BZOJ3224] Tyvj 1728 普通平衡树
传送门http://www.lydsy.com/JudgeOnline/problem.php?id=3224题目大意支持以下操作 1. 插入x数 2. 删除x数(若有多个相同的数,因只删除一个) 3. 查询x数的排名(若有多个相同的数,因输出最小的排名) 4. 查询排名为x的数 5. 求x的前驱(前驱定义为小于x,且最大的数) 6. 求x的后继(后继定义为大于x,且最小的数)题解平衡树原创 2016-01-10 19:21:43 · 496 阅读 · 0 评论 -
Splay总结
论文汇总链接: http://pan.baidu.com/s/1i3waHBR 密码: cfy5 个人感觉讲的比较清楚的(百度云里都包括,贴一下百度文库方便查看) The Magical Splay BST 拓展与伸展树 (Splay) 一日通 杨思雨 2004国家集训队论文 《伸展树的基本操作与应用》浅谈平衡树平衡树种类平衡树通过旋转操作来使自身达到平衡状态,这其中例如Treap,Spl原创 2015-11-19 19:47:24 · 3349 阅读 · 0 评论 -
[BZOJ1251] 序列终结者
传送门http://www.lydsy.com/JudgeOnline/problem.php?id=1251题目大意支持 1.区间+- 2.区间翻转 3.查询区间最大值题解Splay模板题const maxn=100005;var w:array[-1..maxn,1..8]of longint; ans:array[0..maxn]of longint; i,j,k:longin原创 2016-01-11 14:47:49 · 674 阅读 · 0 评论 -
[BZOJ1208] [HNOI2004]宠物收养所
传送门http://www.lydsy.com/JudgeOnline/problem.php?id=1208题目大意。。题解模板题const maxn=100005;var w:array[1..2,-1..maxn,1..6]of longint; sum,root:array[1..2]of longint; i,j,k:longint; n,a,b:longint; ans,c原创 2016-01-11 09:39:38 · 565 阅读 · 0 评论 -
[BZOJ1861] [Zjoi2006]Book 书架
传送门http://www.lydsy.com/JudgeOnline/problem.php?id=1861题目大意支持操作 1.Top S——表示把编号为S的书放在最上面 2.Bottom S——表示把编号为S的书放在最下面 3.Insert S T——T∈{-1,0,1},若编号为S的书上面有X本书,则这条命令表示把这本书放回去后它的上面有X+T本书 4.Ask S——询问编号为S的书原创 2016-01-11 20:14:49 · 387 阅读 · 0 评论 -
[BZOJ1503] [NOI2004]郁闷的出纳员
传送门http://www.lydsy.com/JudgeOnline/problem.php?id=1503题目大意给定m,支持 I x:插入x(若x< m则不插入) S x:对全体权值-x,若更新后的权值小于m则踢出 A x:对全体权值+x F x:查询第k大 最后输出踢出的人数(不包括插入时小于m的)题解平衡树模板题const maxn=300005;var w:array[原创 2016-01-10 19:17:06 · 516 阅读 · 0 评论 -
数据结构总结
鉴于我已经不会写树状数组[捂脸],新开一坑QAQAQ树状数组树状数组支持单点修改+区间和查询单点修改+区间最值查询区间加减+单点查询查询/修改区间最值,查询/修改区间和,单点修改 lowbit(a)=a and (-a) 定义C[i]=A[i-lowbit(i)+1]+…+A[i] 讲到树状数组必有的一张图 我们可以发现对于任意一个C[i],如果修改了的话,会影响到的是C[i+l原创 2015-08-21 12:58:58 · 869 阅读 · 0 评论