306318: CF1178G. The Awesomest Vertex
Memory Limit:256 MB
Time Limit:5 S
Judge Style:Text Compare
Creator:
Submit:0
Solved:0
Description
The Awesomest Vertex
题意翻译
给定一棵根为 $1$ 的有根树,每个节点有两个权值 $a[i]$ 和 $b[i]$ 。定义 $R(v)$ 为 $v$ 祖先的集合(包括自己),则一个节点 $v$ 有多棒取决于其真棒程度,真棒程度是这样定义的: $$ \left| \sum_{w \in R(v)} a_w \right| \cdot \left| \sum_{w \in R(v)} b_w \right|$$ $|x|$ 表示 $x$ 的绝对值。 现在请你支持两种操作: - $1 \ \ v \ \ x$ — 将 $a_v$ 加上 $x$ - $2 \ \ v$ — 输出以 $v$ 为根的子树中最大的真棒程度 数据范围: $1≤n≤2⋅10^5,1≤q≤10^5$ $ -5000≤a_i≤5000 \ ,-5000≤b_i≤5000 $ $ 1\leq x \leq 5000 $题目描述
You are given a rooted tree on $ n $ vertices. The vertices are numbered from $ 1 $ to $ n $ ; the root is the vertex number $ 1 $ . Each vertex has two integers associated with it: $ a_i $ and $ b_i $ . We denote the set of all ancestors of $ v $ (including $ v $ itself) by $ R(v) $ . The awesomeness of a vertex $ v $ is defined as $ $\left| \sum_{w \in R(v)} a_w\right| \cdot \left|\sum_{w \in R(v)} b_w\right|, $ $ </p><p>where $ |x| $ denotes the absolute value of $ x $ . </p><p>Process $ q $ queries of one of the following forms: </p><ul> <li> <span class="tex-font-style-tt">1 v x</span> — increase $ a\_v $ by a positive integer $ x $ . </li><li> <span class="tex-font-style-tt">2 v</span> — report the maximum <span class="tex-font-style-it">awesomeness</span> in the subtree of vertex $ v$.输入输出格式
输入格式
The first line contains two integers $ n $ and $ q $ ( $ 1 \leq n \leq 2\cdot 10^5, 1 \leq q \leq 10^5 $ ) — the number of vertices in the tree and the number of queries, respectively. The second line contains $ n - 1 $ integers $ p_2, p_3, \dots, p_n $ ( $ 1 \leq p_i < i $ ), where $ p_i $ means that there is an edge between vertices $ i $ and $ p_i $ . The third line contains $ n $ integers $ a_1, a_2, \dots, a_n $ ( $ -5000 \leq a_i \leq 5000 $ ), the initial values of $ a_i $ for each vertex. The fourth line contains $ n $ integers $ b_1, b_2, \dots, b_n $ ( $ -5000 \leq b_i \leq 5000 $ ), the values of $ b_i $ for each vertex. Each of the next $ q $ lines describes a query. It has one of the following forms: - 1 v x ( $ 1 \leq v \leq n $ , $ 1\leq x \leq 5000 $ ). - 2 v ( $ 1 \leq v \leq n $ ).
输出格式
For each query of the second type, print a single line with the maximum awesomeness in the respective subtree.
输入输出样例
输入样例 #1
5 6
1 1 2 2
10 -3 -7 -3 -10
10 3 9 3 6
2 1
2 2
1 2 6
2 1
1 2 5
2 1
输出样例 #1
100
91
169
240