树链板子
发布日期:2021-09-25 23:57:53
浏览次数:6
分类:技术文章
本文共 1994 字,大约阅读时间需要 6 分钟。
可以解决的问题:
(1)从 x 到 y 最短路径上的结点值 + z (2)求从 x 到 y 最短路径的结点值之和 (3)以 x 为根节点的子树内,结点值 + z (4)求以 x 为根节点的子树内,所有节点值之和理一下思路吧。。贴板子贴多了今天自己写了写dfs有些信息写不全。。
第一个dfs解决的东西:因为是按照正常dfs顺序遍历的,所以可以记录一些树上的信息: 深度 大小 ( 计算重儿子 ) 找重儿子(为下面剖分指明方向) 记录父亲节点 第二个dfs解决的东西:划分轻重链,按照轻重链将树变成区间,既然变成区间了,那么还需要顺便把原来在树上的信息转换成区间信息。#include#include #include #include #include
转载地址:https://blog.csdn.net/DaNIelLAk/article/details/106444836 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!
发表评论
最新留言
关注你微信了!
[***.104.42.241]2024年04月26日 23时22分15秒
关于作者
喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
LeetCode C++ 67. Add Binary【String】简单
2019-04-28
LeetCode C++ 18. 4Sum【Sort/Two Pointers】中等
2019-04-28
LeetCode C++ 52. N-Queens II【回溯】困难
2019-04-28
LeetCode C++ 118. Pascal‘s Triangle【Array】简单
2019-04-28
LeetCode C++ 55. Jump Game【Greedy】中等
2019-04-28