【主席树】
墓华
这个作者很懒,什么都没留下…
展开
-
主席树 —— ③动态区间第K小(树套树,带修改主席树)
动态区间第K小 动态区间第K小,又称带修改主席树(动态主席树),对于初学真的不太友好。因为这个和静态区间第K小(静态主席树)数据结构都完全不同了。 和求静态第K小一样,我们要得到[L, R]状态的线段树,才能进行二分得到第K小。 静态主席树 是一个 可持久化线段树,每次利用 前缀和来计算[L, R]状态,但是前缀和就不便于进行修改操作了,那么对于可修改的区间求和,我们就要用到 树状数组/线段树。 ...原创 2019-07-29 10:51:12 · 1078 阅读 · 0 评论 -
主席树 —— ①可持久化线段树
可持久化线段树 主席树,即 可持久化线段树。 可持久化:可以找到每次修改时的线段树,即 保存了线段树各个历史版本 ,这样就可以快速查询到第 i 次修改前线段树的状态。 核心思想:与历史版本的线段树共用部分结点。 很明显每次新建一棵线段树带来的时空消耗是难以承受的,但是可以发现,每次单点修改时,只会变动logN个结点(即从根结点到对应叶结点的路径),所以剩下的结点都可以和前一个版本的线段树共用。(所...原创 2019-07-28 15:17:03 · 245 阅读 · 0 评论 -
2019多校第四场 HDU6621 K-th Closest Distance(二分,主席树(可持久化线段树) )
链接:HDU6621 K-th Closest Distance 题意: 给出一段长度为n≤105n\le10^5n≤105的序列a1,a2,... ,an(a≤106)a_1,a_2,...\, ,a_n(a\le10^6)a1,a2,...,an(a≤106),有m≤105m\le 10^5m≤105次询问:L  R&Thi...原创 2019-08-01 19:26:11 · 322 阅读 · 0 评论 -
主席树 —— ②静态区间第K小
静态区间第K小 给出一段长度序列 a[1]、a[2]、… 、a[N],每次询问 [L, R] 区间内第K小的数为? 我们可以建立 权值线段树,线段树内存储 某个权值的出现次数。 对于 [L, R] 区间(a[L] ~ a[R]),构建的线段树 以下示例参考blog:https://www.cnblogs.com/LiuRunky/p/Sustainable_Segment_Tree.html ...原创 2019-07-28 16:29:48 · 526 阅读 · 0 评论 -
2019多校第二场 HDU6601 Keen On Everything But Triangle(静态主席树,斐波那契数列)
链接: HDU6601 Keen On Everything But Triangle 题意: 给出一段长度为N的序列a[1]、a[2]、… 、a[N],每次询问[L,原创 2019-07-28 19:01:45 · 206 阅读 · 0 评论