随笔分类 -  树论——LCA

摘要:虚树,是一种针对树上点集的强力运算。它可以在$O(k\log k)$(其中$k$是点集大小)的时间内,建出一棵包含点集中所有节点,以及其中某些点的lca的树出来。这棵树就被称作虚树。之后就可以在虚树上进行操作了,例如树形DP等。 建出虚树的操作主要是这样的: 我们维护一个栈,从栈顶到栈底构成原树上一 阅读全文
posted @ 2021-04-06 13:24 Troverld 阅读(122) 评论(0) 推荐(0)
摘要:XXXII.CF1491H Yuezheng Ling and Dynamic Tree 首先,相信大家都做过[HNOI2010]弹飞绵羊这道经典原题,而这题显然是那题的增强版。 众所周知,该原题有两种常见解法:LCT或分块。凭直觉发现LCT不可能处理这种区间修改问题,于是我们考虑分块。 分块的话, 阅读全文
posted @ 2021-04-02 17:08 Troverld 阅读(119) 评论(0) 推荐(0)
摘要:XXVIII.[UOJ#576][ULR#1]服务器调度 非常可怕的大数据结构题,原版代码整整码了9K,就算稍微合并合并也剩下7K…… 首先,我们考虑对每种颜色,建出一棵虚树。考虑求出虚树的一条直径。则有个结论是原树上到任意一点最远的点肯定是此直径的端点之一。 例如,我们考虑下方的这棵树: O / 阅读全文
posted @ 2021-04-02 16:59 Troverld 阅读(231) 评论(0) 推荐(0)
摘要:XII.小清新数据结构题 太 清 新 了 话说就我一个人看到这道题后兴冲冲的以为暴力LCT就能过然后发现LCT如果维护子树信息的话只有根节点处的信息是正确的吗(没错,就我一个) 闲话少说,正片开始。 法一:推一种式子,然后LCT/树剖维护 我们设$val_i$为$i$节点的值,然后$sum_i$为根 阅读全文
posted @ 2021-04-01 13:04 Troverld 阅读(116) 评论(0) 推荐(0)
摘要:XV.CF1073G Yet Another LCP Problem 这里记录一下我在思考本题时的一个感悟,即后缀数组与后缀自动机的等价性。 众所周知,SA时有一个常见思路就是针对 height 数组建一棵笛卡尔树。但是,该笛卡尔树,唯一等价于SA针对的串的反串的parent tree。具体可以分别 阅读全文
posted @ 2021-04-01 12:15 Troverld 阅读(124) 评论(0) 推荐(0)
摘要:XLIV.CF599E Sandy and Nuts 神题。 本题给我一个忠告:无论什么题,都要先看数据范围(废话)。 没看到$n\leq 13$之前以为是道毒瘤题,看到之后……还是毒瘤题。 因为数据范围小,可以状压。 先不考虑LCA和边的限制。设$f[x][U]$表示:在以$x$为根的子树中,选择 阅读全文
posted @ 2021-03-30 16:05 Troverld 阅读(188) 评论(0) 推荐(0)