#9817. 传播树
传播树
题目描述
喜欢树。最近他发现了一种有趣的树,名为传播树。这棵树由编号从 到 的 个节点组成,每个节点 具有初始值 。树的根节点是节点 。
这棵树有一个特殊的属性:当将值 添加到节点 的值时,值 将添加到节点 的所有子节点的值中。请注意,当你向节点 的子节点添加值 时,你也会向节点 的所有子节点的所有子节点中添加 ,以此类推。
这棵树支持两种类型的操作:
- — 将 添加到节点 的值;
- — 输出节点 的当前值。
为了帮助 更好地理解这棵树,你必须回答前述类型的 个查询。
输入格式
第一行包含两个整数 和 。
第二行包含 个整数 。
接下来的 行中,每行包含两个整数 和 (),表示节点 和节点 之间有一条边。
接下来的 行中,每行包含一个按上述格式描述的查询。
保证对于所有查询,以下约束条件成立:。
输出格式
对于每个类型为 的查询(输出节点 的值),你必须将查询的答案单独输出在一行上。必须按照输入中给定的顺序回答查询。
5 5
1 2 1 1 2
1 2
1 3
2 4
2 5
1 2 3
1 1 2
2 1
2 2
2 4
3
3
0
样例分析
节点的值在开始时为 。
然后将值 添加到节点 。它传播,值 被添加到它的子节点,节点 和节点 。然后它无法再传播。因此,节点的值为 。
然后将值 添加到节点 。它传播,值 被添加到它的子节点,节点 和节点 。从节点 再次传播,将值 添加到它的子节点,节点 和节点 。节点 没有子节点,所以它无法从那里传播。节点的值为 。
数据范围与提示
对于 的数据:,。