随笔分类 - 图论——树——树上差分
摘要:线段树分裂 以某个键值为中点将线段树分裂成左右两部分,应该类似Treap的分裂吧(我菜不会Treap)。一般应用于区间排序。 方法很简单,就是把分裂之后的两棵树的重复的个节点新建出来,单次时间复杂度严格。 至于又有合并又有分裂的复杂度,蒟蒻一直不会比较有说服力的证明
阅读全文
摘要:"洛谷题目传送门" 闲话 偶然翻到一道没有题解的~~淀粉质~~,想证明一下自己是真的弱 然而ZSYC(字符串组合)早就切了 然后证明成功了,WA到怀疑人生,只好借着ZSY的代码拍,拍了几万组就出来了。。。 思路 是人都能想到的:路径统计,点分治跑不了了。 然而这个统计有些麻烦。。。 首先别看错题,是
阅读全文
摘要:"洛谷题目传送门" 动态点分治小白,光是因为思路不清晰就耗费了不知道多少时间去gang这题,所以还是来理理思路吧。 一个树里面取到最小值的我们可以称作带权重心。类似重心各种性质的证明过程,我们不难证出这样的点顶多只有两
阅读全文
摘要:"洛谷题目传送门" 思路分析 最简单粗暴的想法,肯定是大力LCT,每个树都来一遍link之类的操作啦(T飞就不说了) 考虑如何优化算法。如果没有1操作,肯定每个树都长一样。有了1操作,就来仔细分析一下对不同树的影响。 假设有一个1操作形如,那么从微观来看差异,我们只关注第l 1棵树
阅读全文
摘要:"洛谷题目传送门" 题目大意 就是给你一棵树,每个点都有点权,每次任意询问两点间路径上点权第k小的值(强制在线)。 思路分析 第k小。。。。。。又是主席树了。但这次变成树了,无法直接维护前缀和。 又是树上差分的小套路——每一个点到根的前缀和还是很好维护对吧。 询问的时候,我们可以知道$si
阅读全文