随笔分类 - 数据结构——平衡树
摘要:转载请注明出处:http://www.cnblogs.com/TSHugh/p/8779709.html YJQ的题解把思路介绍得很明白,只不过有些细节说得还是太笼统了(不过正经的题解就应该这个样子吧).我的思路和YJQ有一些不同.首先: 考虑反过来,求三个串都不包含询问串的方案数,这样需要的讨论会
阅读全文
摘要:先说一下斜率优化:这是一种经典的dp优化,是OI中利用数形结合的思想解决问题的典范,通常用于优化dp,有时候其他的一些决策优化也会用到,看待他的角度一般有两种,但均将决策看为二维坐标系上的点,并转化为维护凸壳,一种根据两点的斜率与某一常数的大小关系推断二者的优劣,一种将转移方程化为相关直线方程,通过
阅读全文
摘要:biubiu~~~ 我用平衡树处理的这道题,然而这种方法还是要看评测姬..... 正解是乱搞....就是枚举每一位数作为中位数,比他小的看做-1比他大的看做1,那么我们从一开始就有了一个绵延的山,我们记录这个数之前出现过的距水平线高度差,如果我们在右边找到了这个同样的距离就意味着我们中间的操作为0那
阅读全文
摘要:这样打堆虽然方便但是top到最后大约有6,7的常数。 今天考试卡常卡的怀疑人生……..这个故事告诉我们千万不要忘了常数分析..........
阅读全文
摘要:一开始光知道pushdown却忘了pushup.........
阅读全文
摘要:直接上代码 正所谓 人傻自带大常数 平衡树的几种姿势: AVL Red&Black_Tree 码量爆炸,不常用;SBT 出于各种原因,不常用。 常用: Treap 旋转 基于旋转操作和随机数堆 但不支持区间操作。 非旋转 基于随机数堆和拆分合并操作 常数较大 时间复杂度:很难被卡,均摊O(logN)
阅读全文
摘要:这道题首先可以看出答案一定是一条边,而且答案一定在最小生成树上,那么我们就可以在这个最小生成树上维护他与异色儿子的边最小值,所以我们就可以已通过Kruskal和一棵平衡树来解决,时间复杂度是O(n*logn)级别的但是那个大常数..........然后在最外面独立一棵权值线段树来存最终答案.....
阅读全文
摘要:这个题和千山鸟飞绝体现出了一种用平衡树解决动态集合问题,主要套路就是蜜汁标记。 这个题我一开始用替罪羊树搞了一下对了28个点,后来我换成了Treap一搞对了14个点,再后来发现被卡了Hash我竟然在自然溢出中用了256.... 上代码
阅读全文
摘要:这道题首先可以看出坐标没有什么意义离散掉就好了。 然后你就会发现你要每次都更改坐标,而一旦更改受影响的是坐标里的所有数,要是一个一个的改,会不可描述。 所以换个视角,我们要找的是某只鸟所到每个坐标时遇到的最屌的鸟和遇到最大的团体,所以我就蒙了,这怎么改,蜜汁啊! 蓝后就到了标记的神奇应用,用标记的下
阅读全文