
平衡树
Rayment_cc
++Rp
展开
-
BZOJ 1251 序列终结者 splay
ProblemDescription网上有许多题,就是给定一个序列,要你支持几种操作:A、B、C、D。一看另一道题,又是一个序列 要支持几种操作:D、C、B、A。尤其是我们这里的某人,出模拟试题,居然还出了一道这样的,真是没技术含量……这样 我也出一道题,我出这一道的目的是为了让大家以后做这种题目有一个“库”可以依靠,没有什么其他的意思。这道题目就叫序列终结者吧。 给定一个长度为N的...原创 2017-12-28 13:54:49 · 354 阅读 · 0 评论 -
BZOJ 3323 SCOI2013 多项式的运算 splay
ProblemDescription某天,mzry1992 一边思考着一个项目问题一边在高速公路上骑着摩托车。一个光头踢了他一脚,摩托车损坏,而他也被送进校医院打吊针。现在该项目的截止日期将近,他不得不请你来帮助他完成这个项目。 该项目的目的是维护一个动态的关于x 的无穷多项式 ,这个多项式初始时对于所有i有ai=0ai=0a_i=0。 f(x)=a0x0+a1x1+a2x2......原创 2018-01-07 17:01:11 · 392 阅读 · 0 评论 -
BZOJ 1500 维修数列
ProblemBZOJ请戳我Solution又是一道splay的恶心题,大模拟(真相了),细节多。首先这道题卡空间,而且节点多,你需要开个队列回收被删除的节点,写个get函数。 然后按照套路,你需要两个哨兵节点。 对于插入操作,由于插入节点较多,用insert操作会导致复杂度变成O(nlogn)O(nlogn)O(nlogn),不如直接直接调用build函数,旋出需要插入的...原创 2018-03-15 11:08:42 · 277 阅读 · 0 评论 -
BZOJ 4919 大根堆
ProblemBZOJSolution一个树上lis问题。处理方式很类似于序列上的lis问题的nlogn解法。 每个节点维护一个set,set就类似于nlogn中的维护的单调序列。 将节点x的子树启发式合并一下,然后找到第一个大于等于val[x]的值修改为val[x]即可。 最后的答案就是s[1].size()。Code#include <algorit...原创 2018-04-04 12:08:08 · 397 阅读 · 0 评论 -
BZOJ2329 HNOI2011括号修复
ProblemBZOJSolution考虑询问,如果我们把相互匹配的括号删除,那么我们最终会得到形如)))(的序列。 对于这样一个序列,我们不妨贪心。将左边连续的l个右括号,从第一个到(l+1)/2分别改为左括号。对右边则反之。 那么当l为偶数时,左边会变得合法。当l为奇数时,会多余一个左括号,但由于题目保证了有解,即l+r为偶数,这个多余的左括号将与右边的多余右括号匹配。 这样...原创 2018-05-21 14:05:44 · 229 阅读 · 0 评论 -
口胡fhq treap
口胡其实就是传说中的无旋treap。鉴于我总是写不出无旋treap,但是无旋treap又意外的好用,而且之前这个无旋treap板子是在远航大佬的博客上学的,但是远航貌似现在没时间维护博客,所以我就发一篇方便以后自己翻翻。其实远航大佬还是写的很好的,如果后续有维护的话建议看远航的文章入门。。无旋treap好打,同样可以支持按权值维护或者维护序列,核心函数一般顶多四个,所以码量相比于splay确实...原创 2018-11-09 17:01:53 · 285 阅读 · 1 评论