luogu#P11408. [RMI 2020] 树咖 / Arboras

[RMI 2020] 树咖 / Arboras

题目背景

译自 8th Romanian Master of Informatics, RMI 2020 D2T3。3s,0.25G\texttt{3s,0.25G}

题目描述

有一棵 NN 个节点的有根树,边有边权。节点编号为 0N10\sim N-100 号点为根。

定义 f(u)f(u)uu 子树内经过 uu 的最长链的长度。

QQ 次操作,一次操作将一条边的边权加上一个正数。在第一次操作前,和每次操作后,求出 $\displaystyle \left(\sum_{1\le i\le N} f(i)\right)\bmod (10^9+7)$。

输入格式

第一行,一个正整数 NN

第二行,(N1)(N-1) 个整数 p1,,pN1p_1,\cdots,p_{N-1}pip_i 表示 ii 号点的父亲为 pip_i

第三行,(N1)(N-1) 个正整数 d1,,dN1d_1,\cdots,d_{N-1}did_i 表示 (i,pi)(i,p_i) 边边权为 did_i

第四行,一个正整数 QQ

接下来 QQ 行,每行两个正整数 x,vx,v,表示给 (x,px)(x,p_x) 边权增加 vv

输出格式

输出 (Q+1)(Q+1) 行,每行一个整数:

  • 第一行,输出第一次操作前的答案。
  • 接下来 QQ 行,输出每次操作后的答案。
5
0 0 1 1
0 0 0 0
10
1 2
2 2
3 2
4 2
4 1
3 1
2 1
1 1
4 1000
2 1000
0
2
4
8
10
12
13
14
15
2015
3015

提示

对于 100%100\% 的数据,保证:

  • 1N,Q1051\le N,Q\le 10^5
  • 1di1091\le d_i\le 10^9
  • 0pi<i0\le p_i\lt i
  • 1v1091\le v\le 10^9
  • 1x<N1\le x\lt N
子任务编号 N,QN,Q\le 特殊性质 得分
1 1 103 10^3 1111
2 2 105 10^5 A 1313
3 3 B 3131
4 4 4545
  • 特殊性质 A:树高不大于 5050
  • 特殊性质 B:di=109d_i=10^9v=1v=1