~splay~
文章平均质量分 94
Regina8023
meow meow meow
展开
-
【BZOJ 3223】 Tyvj 1729 文艺平衡树
splay区间反转裸题。原创 2014-11-25 12:48:35 · 1139 阅读 · 0 评论 -
【BZOJ 1861】 [Zjoi2006]Book 书架
splay模板题~原创 2015-02-15 16:07:50 · 1028 阅读 · 0 评论 -
【BZOJ 1500】 [NOI2005]维修数列
应该是最复杂的splay题目。。有详细解释~原创 2014-11-26 23:04:42 · 1220 阅读 · 0 评论 -
【BZOJ 1014】 [JSOI2008]火星人prefix
splay+hash+二分~详细题解~原创 2015-01-22 11:43:14 · 872 阅读 · 0 评论 -
【BZOJ 1269】 [AHOI2006]文本编辑器editor
splay操作的模板题。原创 2014-11-25 06:22:10 · 890 阅读 · 0 评论 -
【BZOJ 3224】 Tyvj 1728 普通平衡树
以权值为关键字的splay模板题。原创 2014-11-27 18:57:31 · 2093 阅读 · 2 评论 -
【BZOJ 1251】 序列终结者
以位置为关键字的splay模板题。做了BZOJ1500后这道就轻而易举了,此题同BZOJ1500一样要注意zigzag的Push_down问题(详见BZOJ1500)#include #include #include #include #include #define maxx 10000000using namespace std;struct spl原创 2014-11-27 18:54:07 · 1007 阅读 · 0 评论 -
【BZOJ 1552】[Cerc2007]robotic sort
以位置为关键字的splay。本题的大致思路就是每次找到整棵树中值最小的结点,把他旋到根结点即可求出他的位置,把他赋值为最大值(在根结点赋值只要Push_up(root)就可以了),然后反转区间,重复n次即可。注意:1.在数列中插入永远在排在最前和最后的两个值,赋值为最大值,方便后面操作2.有权值相同的点输出在起始时候最早出现的位置,我解决的方法是:每个结原创 2014-11-27 18:50:41 · 1100 阅读 · 0 评论 -
【BZOJ 1507】[NOI2003]Editor
splay操作的裸题。(BZOJ1269的简化版)这道题要求维护一个数列,支持一系列操作(光标的位置用一个pos记录即可):Move(k):直接把pos赋值为k+1(为什么是k+1,后面再说)Insert(n,str):先把pos旋转到根节点,再把pos+1旋到根结点的儿子,然后直接在pos+1的左儿子插入str即可Delete(n):先把pos旋转到根节点,再把pos+n+1旋到原创 2014-11-25 06:51:23 · 930 阅读 · 0 评论 -
【BZOJ 1112】 [POI2008]砖块Klo
splay维护中位数~原创 2015-03-22 13:07:40 · 948 阅读 · 0 评论