
主席树/树套树
文章平均质量分 57
jzq233jzq
这个作者很懒,什么都没留下…
展开
-
主席树维护dfs序——BZOJ3653/Luogu3899 谈笑风生
题面:BZOJ3653 Luogu3899 被luogu难度等级骗了。。。 首先看到子树的题就是dfs序了,我们用L[i]L[i]表示i的初访问戳,R[i]R[i]表示i的末访问戳 我们设size[i]size[i]表示子树大小(不包括i),deep[i]deep[i]表示深度 首先我们可以发现a,b,c在一条链上,所以我们考虑这几种情况:b是a的祖先,根据乘法原理我们可以得到答案是siz原创 2017-08-18 11:09:12 · 324 阅读 · 0 评论 -
概率+树套树——UOJ#291/Luogu3688 [ZJOI2017]树状数组
题面:Luogu3688 UOJ#291 我考场上这题打都没打QAQ,出来说这题是Day1最水的一道。。。 题目的大意嘛。。。就是这张图啦(Ps:orz SW_Wind) (注意到可怜手上拿着的倒着的“树状数组”了吗接下来开始了无限的懵逼。。。 过了N多个月,看了N多个题解之后,我终于懵逼地在luogu上卡着AC了 然而UOJ还是被卡常90分QAQ 首先要知道的是可怜写的sb“树状数原创 2017-07-08 15:45:17 · 356 阅读 · 0 评论 -
主席树——Codeforces811B Vladik and Complicated Book
题面:cf811b 简要题意:给定一个1~n的排列, 询问区间l,r经过排序后数列第k个数是否还处在原位(l<=k<=r)和求区间k小很像,转化一下题目就是询问区间l,r中数列第k个数是否为区间第(k-l+1)小 所以权值主席树直接上不虚。。。 据说暴力能过。。。QAQ(毕竟是B题,数据范围这么小+毛子机子跑得快肯定能过)#include<cstdio>#include<algorith原创 2017-06-01 15:44:22 · 414 阅读 · 0 评论 -
树套树——BZOJ3196/Luogu3380 二逼平衡树
http://www.lydsy.com/JudgeOnline/problem.php?id=3196 https://www.luogu.org/problem/show?pid=3380 tyvj原题:传送门 这么多乱七八糟的操作,交给平衡树好了 再加上区间,外面套个线段树好了 不过呢,可能我写得太渣了吧,splay一直TLE 没办法,换了个非旋式Treap搞搞掉算了。。。#inc原创 2017-04-10 10:29:03 · 361 阅读 · 0 评论 -
树套树——BZOJ3110/Luogu3332 [ZJOI2013]K大数查询
http://www.lydsy.com/JudgeOnline/problem.php?id=3110 https://www.luogu.org/problem/show?pid=3332 带插入的区间k值啊。。。 这个啊,用主席树我不会做,这个我只会树套树 外层权值线段树,内层区间线段树 把k大改成k小很简单,取反即可哦 然后介绍一下思路 外层修改和查找时的过程等同于找链,类似于原创 2017-04-06 14:53:41 · 459 阅读 · 1 评论 -
主席树——BZOJ3673/BZOJ3674 可持久化并查集(加强版)
http://www.lydsy.com/JudgeOnline/problem.php?id=3674 据说3673因为没有加强版而直接用暴力水掉了? 用主席树可以搞出来一个可持久化数组,然后就可以干很多的事情…… 于是我们可以维护一个可持久化并查集 具体不说了 这里多维护一个深度就好了,其他没啥区别 然后居然没有数据范围?! 然后自己凑一下,大约10^7数组可以过 唉,毒瘤数据结原创 2017-04-05 21:35:08 · 519 阅读 · 0 评论 -
浅谈主席树和区间第k值
主席树,是一种高级数据结构,是线段树的高级形式 主席树的全名应该叫做可持久化线段树 顾名思义,这种数据结构可以持久化,也即可查询历史记录 至于为什么要把这种数据结构叫做主席树,我就不多说了(我是不会告诉你我其实也不知道啊) 首先声明:本贴中的修改指单点修改我们先来说说主席树的来源吧。 一开始的关于记录历史记录(也就是可持久化)的做法是:建多个线段树分别存储,然后直接找对应的线段树即可 但原创 2017-04-05 14:46:48 · 998 阅读 · 0 评论