题目就不多说了。
本题目,可以用dfs序+线段树做:题目给定了一棵树,树上节点告诉了权值。我们可以先将这棵树进行dfs将一棵树变成线性结构:如图
变成这样后,然后就可以用线段树。
- 操作1:也就是将某两个点+a;
- 操作2:区间更新
- 操作3:查询起始区间到某点的和
我们建线段树,需要统计 +,- 抵消后的个数,因为要知道该区间的和,需要知道+a;
简单插线问线。
代码---参考下面链接吧
本文介绍如何使用DFS序结合线段树解决一类树形结构上的操作问题,包括节点间加值、区间更新及查询指定区间内节点权值之和等操作。

被折叠的 条评论
为什么被折叠?