码迷,mamicode.com
首页 >  
搜索关键字:splay    ( 7870个结果
Hdu 4699 Editor(Splay)
题目大意: 给出一个文本编辑器,按照图示的操作进行删减和添加。 思路分析: 对于如何维护左边最大,就要记录每个区间的左边最大,还有这个节点的值,还有子区间的和。 注意看题目,题目的要求输出左边最大是不能为空集的,意味着如果全部都是负数,那么就输出最左边的负数就好。 那么就要解决初始化的问题。 再有一点问题就是会有很多个连续的L ,R操作。所以要判断边界。 #inclu...
分类:其他好文   时间:2014-09-24 17:08:17    阅读次数:197
POJ 3580 SuperMemo Splay
题目大意:维护一个序列,提供一些操作: 1.将一个区间加上一个值 2.翻转一个区间 3.将一个区间内的数字旋转T次(每次旋转区间内每个元素向右移一位,最右一个移动到最左面去) 4.在一个元素后面插入一个数 5.删除某个元素 6.查询区间最小值 写过BZOJ那几道Splay之后这题就变得非常水了。。。只是有几个要点需要注意: 1.操作3的T可能大于区间长度 还可能是负的 所以一定要取...
分类:其他好文   时间:2014-09-22 14:44:42    阅读次数:227
BZOJ 1493 NOI2007 项链工厂
题目大意:维护一个环,每个点有一个颜色,提供6种操作: 1.将这个环顺时针旋转k 2.沿点1所在直径翻转 3.将两个珠子互换 4.将一段区间染色 5.查询这个环上有多少颜色段 6.查询一段区间有多少颜色段 关于颜色段通用的处理方法是每个区间记录三个值,颜色段数、左端点颜色、右端点颜色,合并时颜色段数相加,如果左区间右端点和右区间左端点颜色相同则减一 然后用Splay维护区间即可 不...
分类:其他好文   时间:2014-09-20 15:25:17    阅读次数:239
三大平衡树(Treap + Splay + SBT)总结+模板
Treap树 核心是 利用随机数的二叉排序树的各种操作复杂度平均为O(lgn)Treap模板:#include #include #include #include #include #include #include #include #include #include #include #in....
分类:其他好文   时间:2014-09-18 18:30:14    阅读次数:579
伸展树的实现
#include template class Splay_Tree { public: Splay_Tree(); bool find(const T& val); void insert(const T& val); void del(const T& val); private: typedef struct tagNODE { T data; struct tag...
分类:其他好文   时间:2014-09-17 13:40:32    阅读次数:219
HNOI 2002 营业额统计
简单题,splay题意: 按顺序给出一些数,找出距离当前数最近的数的差,将这些差求和即可。#include #include #include #include #include #include #include #include #include #include #include #defi....
分类:其他好文   时间:2014-09-14 21:53:47    阅读次数:250
POJ 3481 splay模板
最后撸一发splay。之前用treap撸的,现在splay也找到感觉了,果然不同凡响,两者之间差别与精妙之处各有其精髓!真心赞一个!POJ平衡树的题目还是比较少,只能挑之前做过的捏一捏。但是收获很多,这一天做的题都是有一定普遍性的。#include #include #include #includ...
分类:其他好文   时间:2014-09-14 02:31:06    阅读次数:260
POJ 1442 splay
前几天用treap写了这一题,不过treap支持的操作不如splay的多,作为一个完美主义者,重新用splay写了这一题。splay大部分操作可以通过强大到无与伦比的数据结构splay-tree然后根据其中步骤写出来。一定要注意的一点:几乎所有操作的背后,都要splay(x, 0)一下。一开始我还以...
分类:其他好文   时间:2014-09-14 00:05:16    阅读次数:384
POJ 2352 splay
再撸一发splay。#include #include #include #include #include #include #include #include #include #include #include #define max(x,y) ((x)>(y)?(x):(y))#define...
分类:其他好文   时间:2014-09-14 00:01:56    阅读次数:232
hdu 4453
6种操作:add x:由于涉及到这是一个循环数组。可能有操作(尾-头)的区间,如果这样,直接将尾部的区间切下来放到最前面,然后调整那个“指针”。reverse x:同add操作一样,可能涉及(尾-头)。insert xdeletemove x:注意指针的变化query一气呵成。splay的题目赶脚就...
分类:其他好文   时间:2014-09-10 00:14:19    阅读次数:493
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!