#BZOJ4765. 普通计算姬
普通计算姬
题目描述
"奋战三星期,造台计算机"。小 G 响应号召,花了三小时造了台普通计算姬。普通计算姬比普通计算机要厉害一些。普通计算机能计算数列区间和,而普通计算姬能计算树中子树和。更具体地,小 G 的计算姬可以解决这么个问题:给定一棵 个节点的带权树,节点编号为 到 ,以 为根,设 表示以点 为根的这棵子树中所有节点的权值和。
计算姬支持下列两种操作:
-
给定两个整数 ,修改点 的权值为 。
-
给定两个整数 ,计算 。
尽管计算姬可以很快完成这个问题,可是小 G 并不知道它的答案是否正确,你能帮助他吗?
输入格式
第一行两个整数 ,表示树的节点数与操作次数。
接下来一行 个整数,第 个整数 表示点 的初始权值。
接下来 行每行两个整数 ,表示一条树上的边,若 则说明 是根。
接下来 行每行三个整数,第一个整数 表示操作类型。 若 则接下来两个整数 表示将点 的权值修改为 。若 则接下来两个整数 表示询问。
输出格式
对每个操作类型 输出一行一个整数表示答案。
6 4
0 0 3 4 0 1
0 1
1 2
2 3
2 4
3 5
5 6
2 1 2
1 1 1
2 3 6
2 3 5
16
10
9
数据规模与约定
对于 的数据,,,,。