#P13567. 「CZOI-R5」折跃点
「CZOI-R5」折跃点
题目背景
宇宙中爆发了星际战争。
题目描述
为了在星际战争中进行瞬间移动,我方已经在占领的星域中建立了 个折跃点。所有折跃点构成一棵以折跃点 为根的有根树。第 个折跃点的能量值为 。
我们称折跃点 经过 次连续折跃能到达折跃点 ,当且仅当从折跃点 出发,走过 条边后能到达折跃点 ,且过程中与折跃点 的距离不断增加或不断减少。
现在要进行 次以下维护操作:
- 空间能量增强:对于所有从折跃点 经过 次连续折跃能到达的折跃点,将其能量值加 。
- 折跃测试:求所有从折跃点 经过 次连续折跃能到达的折跃点,能量值的和。
输入格式
第一行输入 个整数 。
第二行输入 个整数,第 个为 。
接下来 行,每行输入 个整数 ,表示一条边。
接下来 行,每行先输入 个整数 ,然后:
- 若 ,则输入 个整数 ,表示一次空间能量增强。
- 若 ,则输入 个整数 ,表示一次折跃测试。
输出格式
输出若干行整数,即为所有折跃测试的结果。
5 5
6 8 4 10 6
2 1
3 2
4 1
5 4
1 1 2 7
2 4 1
2 2 0
1 2 1 4
2 1 2
19
8
28
提示
【样例解释】
这棵树如图。
第一次操作满足条件的折跃点为折跃点 ,操作后 。
第二次操作满足条件的折跃点为折跃点 ,答案为 。
第三次操作满足条件的折跃点为折跃点 ,答案为 。
第四次操作满足条件的折跃点为折跃点 ,操作后 。
第五次操作满足条件的折跃点为折跃点 ,答案为 。
【数据范围】
本题采用捆绑测试。
- Subtask #1():。
- Subtask #2():。
- Subtask #3():。
- Subtask #4():无特殊限制。
对于 的数据,,,,,。