主席树
_Ark
这个作者很懒,什么都没留下…
展开
-
BZOJ 3744 Gty的妹子序列 做法集结
我只会O(nnlogn)O(n\sqrt nlogn)O(nnlogn)的…搬来博客要看O(nn)O(n\sqrt n)O(nn)的戳这里(貌似只有代码)貌似把块大小开成根号要12500ms,但是开成100只要9500ms……常数问题CODE#include <cmath>#include <cstdio>#include <cstring>...原创 2019-03-20 08:32:09 · 296 阅读 · 0 评论 -
BZOJ 3744 Gty的妹子序列 分块+树状数组+主席树
这个做法是O(nnlogn)O(n\sqrt nlogn)O(nnlogn)的主席树…(其实还有不用主席树,只用分块+树状数组的O(nnlogn)O(n\sqrt nlogn)O(nnlogn),因为常数小,快了一倍)CODE#include <cmath>#include <cstdio>#include <cstring>#include &...原创 2019-03-24 12:16:36 · 202 阅读 · 0 评论 -
BZOJ 3439: Kpm的MC密码 (trie+dfs序主席树)
题意略分析把串倒过来插进trietrietrie上, 那么一个串的kpmkpmkpm串就是这个串在trietrietrie上对应的结点的子树下面的所有字符串.那么像 BZOJ 3551/3545: [ONTAK2010]Peaks加强版 用dfsdfsdfs序+主席树就可以O(nlogn)O(nlogn)O(nlogn)解决查找子树第kkk小问题但是与 BZOJ 3551/3545: [...原创 2019-03-23 17:41:11 · 167 阅读 · 0 评论 -
BZOJ 3551/3545: [ONTAK2010]Peaks加强版 (Kruskal树+dfs序上的主席树+倍增)
Orz PoPoQQQ学到了维护子树信息的时候用dfsdfsdfs序套主席树节省线段树空间.学到了怎么用指针写可持久化线段树…emmm…CODE只贴上3551的代码#include <queue>#include <cctype>#include <cstdio>#include <cstring>#include <al...原创 2019-03-23 15:00:19 · 275 阅读 · 0 评论 -
BZOJ 3626 [LNOI2014]LCA 树剖+(离线+线段树 // 在线+主席树)
BZOJ 4012 [HNOI2015]开店 的弱化版,离线了,而且没有边权(长度).两种做法1 树剖+离线+线段树这道题求的是一个点zzz与[l,r][l,r][l,r]内所有点的lcalcalca的深度之和.可以发现,dep[lca(u,v)]dep[lca(u,v)]dep[lca(u,v)]就等于从uuu到根与从vvv到根的路径的交集路径的长度.那么只要把[l,r][l,r][l,r...原创 2019-03-25 22:13:05 · 173 阅读 · 0 评论 -
BZOJ 3932: [CQOI2015]任务查询系统 (主席树板题)
就是裸的主席树,差分之后排序插入主席树就行了.注意主席树查询的时候叶子节点要特判,因为本身是有size的还有要开longlongCODE#include <cctype>#include <cmath>#include <cstdio>#include <cstring>#include <algorithm>using...原创 2019-03-21 15:54:52 · 116 阅读 · 0 评论 -
BZOJ 3514: Codechef MARCH14 GERALD07加强版 (LCT维护最大生成树+主席树)
题意给出nnn个点,mmm条边.多次询问,求编号在[l,r][l,r][l,r]内的边形成的联通块的数量,强制在线.分析LCTLCTLCT维护动态最大生成树,先将每条边依次加进去,若形成环就断掉最早加进去(编号最小)的边,然后记录early[]early[]early[]数组,表示第i条边弹掉了哪条边,若没有弹出边,early[i]=0early[i]=0early[i]=0然后每个询问...原创 2019-03-21 14:52:42 · 160 阅读 · 0 评论 -
BZOJ 4012 [HNOI2015]开店 (区间修改 永久化标记 主席树)
讲得好啊加了永久化标记后主席树就能区间修改了,但是空间复杂度O(nlog2n)O(nlog^2n)O(nlog2n),实测开O(n∗50)O(n*50)O(n∗50)n能过…各个sum都要开longlong啊,毁一生CODE#include <cmath>#include <cstdio>#include <cstring>#include <...原创 2019-03-20 10:28:37 · 260 阅读 · 0 评论 -
BZOJ 3289: Mato的文件管理 (区间查询逆序对)
这道题就是不要求强制在线的 BZOJ 3744 Gty的妹子序列所以说离线做法有莫队,在线做法见上面连接.这里贴出常数巨大O(nnlogn)O(n\sqrt nlogn)O(nnlogn)分块+树状数组+主席树做法.CODE#include <cmath>#include <cstdio>#include <cstring>#include &l...原创 2019-03-20 08:55:48 · 406 阅读 · 0 评论 -
BZOJ 5496: [2019省队联测]字符串问题 (后缀数组+主席树优化建图+拓扑排序)
题意略分析考场上写了暴力建图40分溜了…(结果只得了30分)然后只要优化建边就行了首先给出的支配关系无法优化,就直接A向它支配的B连边.考虑B向以B作为前缀的所有A连边,做一遍后缀数组,两个区间的左端点位置的LCP一定大于等于B的长度.在排好序的后缀数组上就是一段区间.然后用线段树优化建边.那么用ST表倍增算一下能拓展的区间就行了.然后由于只能向长度大于自己的连边,就按长度排序然后...原创 2019-04-13 17:17:27 · 257 阅读 · 0 评论