#P10603. BZOJ4372 烁烁的游戏

    ID: 10043 Type: RemoteJudge 3000ms 512MiB Tried: 0 Accepted: 0 Difficulty: 6 Uploaded By: Tags>线段树O2优化树链剖分动态树分治

BZOJ4372 烁烁的游戏

题目背景

题目来自原 BZOJ,我们承认题面及原数据的版权均属于原 BZOJ 或将题目授权给 BZOJ 使用的出题人。如果您是版权所有者且认为我们侵犯了您的权益,可联系我们。


烁烁很喜欢爬树,这吓坏了树上的皮皮鼠。

给定一颗 nn 个节点的树,边权均为 11,初始树上没有皮皮鼠。

烁烁他每次会跳到一个节点 uu ,把周围与他距离不超过 dd 的节点各吸引出 ww 只皮皮鼠。皮皮鼠会被烁烁吸引,所以会一直待在节点上不动。

烁烁很好奇,在当前时刻,节点 uu 有多少个他的好朋友——皮皮鼠。

题目描述

题目背景可以被抽象成这个问题:

给一棵 nn 个结点的树,边权均为 11,初始点权均为 00。进行 mm 次操作:

  • Q x\text{Q x}:询问结点 xx 的点权。
  • M x d w\text{M x d w}:将树上与结点 xx 距离不超过 dd 的节点的点权均加上 ww

输入格式

第一行两个正整数 n,mn,m

接下来的 n1n-1 行,每行三个正整数 u,vu,v,代表 u,vu,v 之间有一条边。

接下来的 mm 行,每行给出上述两种操作中的一种。

输出格式

对于每个 QQ 操作,输出当前 xx 结点的点权。

7 6
1 2
1 4
1 5
2 3
2 7
5 6
M 1 1 2
Q 5
M 2 2 3
Q 3
M 1 2 1
Q 2
2
3
6

提示

对于所有数据,保证 1n,m1051\leq n,m\leq 10^5w104|w|\leq 10^4。注意:ww 不一定为正整数,