#aBC309E. ABC309E] Family and Insurance

ABC309E] Family and Insurance

AT_abc309_e [ABC309E] Family and Insurance

题目描述

有一个由人 11、人 22\ldots、人 NN 组成的家系。对于 i2i \geq 2,人 ii 的父亲是人 pip_i

这个家系中的人一共加入了 MM 次保险。对于 i=1,2,,Mi=1,2,\ldots,M,第 ii 次保险的投保人是人 xix_i,被保险人包括本人以及其向下 yiy_i 代以内的所有子孙。

请你求出,至少成为 11 次保险的被保险人的人数。

输入格式

输入以如下格式从标准输入读入。

NN MM
p2p_2 p3p_3 \ldots pNp_N
x1x_1 y1y_1
\vdots
xMx_M yMy_M

输出格式

请输出答案。

输入输出样例 #1

输入 #1

7 3
1 2 1 3 3 3
1 1
1 2
4 3

输出 #1

4

输入输出样例 #2

输入 #2

10 10
1 1 3 1 2 3 3 5 7
2 1
5 1
4 3
6 3
2 1
7 3
9 2
1 2
6 2
8 1

输出 #2

10

说明/提示

限制条件

  • 2N3×1052 \leq N \leq 3 \times 10^5
  • 1M3×1051 \leq M \leq 3 \times 10^5
  • 1pii11 \leq p_i \leq i-1
  • 1xiN1 \leq x_i \leq N
  • 1yi3×1051 \leq y_i \leq 3 \times 10^5
  • 输入均为整数

样例解释 1

对于第 11 次保险,人 1111 代以内的子孙是人 22 和人 44,所以人 1,2,41,2,4 是被保险人。
对于第 22 次保险,人 1111 代以内的子孙是人 22 和人 4422 代以内的子孙是人 33,所以人 1,2,3,41,2,3,4 是被保险人。
对于第 33 次保险,人 44 没有 1,2,31,2,3 代以内的子孙,所以只有人 44 是被保险人。
综上,至少成为 11 次保险的被保险人的人数为人 1,2,3,41,2,3,444 人。

由 ChatGPT 4.1 翻译