T260198 狭路相逢
题目背景
鹿死谁手棋局困,狭路相逢勇者胜。
题目描述
__DD__ 和 __XX__ 在月光森林遭遇潮汐女王和手下。
__DD__ 和 __XX__ 会共 $n$ 个招式,按 1~$n$ 编号,第 $i$ 招式可以造成 $hi$ 点伤害,并且第 $i$ 招式仅有一个前置招式 $fi$(若为0无前置招式)。
潮汐女王有 $m$ 个手下,按 1~$m$ 编号,第 $i$ 手下受到第 $ai$ 招式克制,有 $bi$ 点生命值,克制关系会传承下去,简单地说就是将传承关系看成树,那么你必须用以第 $ai$ 招式为根结点的子树里面的技能才能造成伤害,而当伤害大于等于生命值时战胜该手下。
然而为了战斗更有趣,潮汐女王会进行 $p$ 次篡改秘籍,在他们挑战第 $ti$手下前将所有以第 $xi$ 招式为基础的所有招式伤害值增加 $yi$ ($yi$ 可正可负),也就是说在以第 $xi$ 招式为根结点的子树上的所有技能伤害值会增加 $yi$。
由于 __DD__ 和 __XX__ 轮流休息,所以总是在单挑,并且无暇计算他们能用的招数,请你计算一下在挑战每一个手下时有多少个招式能让战斗**一回合内结束**。
由于数据过大,**一定要开O2,并且需要快读模板**,如下:
```
inline int read()
{
int X=0,s=1;char ch=getchar();
while(ch'9') {if(ch=='-') s=-1;ch=getchar();}
while(ch>='0'&&ch= $bi$ 。
有 $p$ 次修改操作会在询问第 $ti$ 次前,将以 $xi$ 为根结点的子树上所有结点权值增加 $yi$。
输入格式
第 1 行3个整数,分别为招式总数 $n$ ,手下编号数 $m$ ,篡改次数 $p$。
接下来 $n$ 行,第 $i$ 行2个整数,表示第 $i$ 招式伤害值 $hi$ 和前置招式 $fi$ 。
接下来 $m$ 行,第 $i$ 行2个整数,表示编号 $i$ 手下受第 $ai$ 招式克制,有 $bi$ 点生命值。
接下来 $p$ 行,第 $i$ 行3个整数,表示在挑战第 $ti$ 号手下前增加第 $xi$ 招式的伤害 $yi$。
输出格式
共 $m$ 行,第 $i$ 行表示挑战第 $i$ 手下时可以一回合结束战斗的招式数。
说明/提示
样例1说明:
对第1手下,可选择{1,2,4,5},对第2手下,可选择{5},篡改后,对第3手下无招式可一回合结束,对第4手下可选择{1,2,5}
数据范围:
对于30%的数据,0