树上问题记录
记录一下这一类问题。
T1
P4211 [LNOI2014] LCA
每次给出, 定义 为 节点到根节点的距离+1,求 。
个节点 , 次询问 ,其中 。
题目很简洁,我们如果暴力求每一个 lca ,复杂度将是
因为有一个定点,所以所有枚举到的 lca 一定是在 z 到根节点的这条链上(包括
考虑离线询问为
T2
P5305 [GXOI/GZOI2019]旧词
T1的升级版,求,数据范围 。
和之前一样的思路,但是要维护的值是要求 k 次方的,所以我们考虑差分,让根节点到每一个点路径上的值之和等于这个值,因此每一个线段树上的点需要带一个
T3
Lomsat gelral
对于每一个,求出以 为根的子树中,占数量最多的颜色的编号和。 。
考虑线段树合并,递归完成每一个子节点后与根节点合并,维护的将是颜色的权值线段树,复杂度为
考虑 dsu on tree ,先递归解决轻儿子,然后在计数器中删掉贡献,最后解决重儿子,然后再直接把其他轻儿子合并上去,总的复杂度也是
T4
P4556 [Vani有约会]雨天的尾巴
每次给出,在他们最短简单路径上加权值为 的标记,问最后每一个节点的最多权值的数值。
考虑线段树合并,对于每一个操作打上树上差分标记,最后统一 dfs 一次,暴力 merge 所有的信息,时间复杂度
考虑树链剖分,在线做法,每个操作都使用树剖一条链一条链去跳,再用线段树维护,时间复杂度
考虑 dsu on tree,和线段树合并一样先打上差分标记,再遍历轻儿子删贡献,暴力 merge 到重儿子上,时间复杂度
T5
P4197 Peaks
给定无向带边权带点权图,组询问,每组询问询问从点 开始只经过边权不大于 的路径所能到达的点中第 大点权,如果无解输出 −1。
因为要求走不超过 x 边权的路径,所以肯定是走最小生成树最优,因此建立 ,属于是码农题了。
__EOF__

本文链接:https://www.cnblogs.com/fzefze/p/17613791.html
关于博主:评论和私信会在第一时间回复。或者直接私信我。
版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!
声援博主:如果您觉得文章对您有帮助,可以点击文章右下角【推荐】一下。您的鼓励是博主的最大动力!
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· DeepSeek 开源周回顾「GitHub 热点速览」
· 记一次.NET内存居高不下排查解决与启示
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· .NET10 - 预览版1新功能体验(一)