一颗n个节点的树,m次操作,有点权(该节点蚂蚁个数)和边权(相邻节点的距离),蚂蚁们喜欢开会,为蚁族的发展做出长远规划。 三种操作: 操作1:1 i x将节点i的点权修改为x。(1 操作2:2 i x将第i条边的边权修改为x。(1 操作3:3 i 节点i发出开会指令,求树上所有蚂蚁到走到节点i的距离和。(1 = i = n)
输入描述:
第1行2个整数 n, m;第2行n个整数,第i个整数ai 表示节点i的蚂蚁数量;接下来n-1行,每行两个整数,bi, ci。表示节点i+1与节点bi 之间有一条长为ci的边相连。接下来m行表示m个操作。


输出描述:
对于每个操作3,输出一个整数,表示树上所有蚂蚁到走到节点i的距离和。
示例1

输入

3 4
1 1 1
1 1
2 1
3 1
1 2 5
2 1 5
3 3

输出

3
11

备注:
1 1 1 1 = ci = 100000;
加载中...