#NP0162. L41 NP0162-子树操作

0

L41 NP0162-子树操作

题目描述

给定一棵nn个节点的树,其中节点11为根节点,每个点有自己的权值。给定mm个操作。

操作一:1 u x,把节点uu的权值增加xx。 操作二:2 u x,把以节点uu为根的子树中所有点的权值都增加xx。 操作三:3 u,询问节点uu的权值。 操作四:4 u,询问以节点uu为根的子树中所有点的点权之和。

输入格式

第一行输入两个整数n,mn,m。 第二行输入nn个整数pi(pi<i)p_i(p_i<i),pip_i表示节点ii的父节点编号,保证只有p1=0p_1=0,表示节点11为根节点。 第三行输入nn个整数aia_i,表示每个节点的初始权值。 接下来mm行,每行输入一个操作,格式如题面所示。

输出格式

输出若干行,对于每次询问操作,输出一行一个整数,表示对应询问的答案。

样例输入 #1

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

样例输出 #1

4
15

说明/提示

有1≤n,m,ai,x≤1051\leq n,m,a_i,x\leq 10^5。