#P9067. [Ynoi Easy Round 2022] 虚空处刑 TEST_105

[Ynoi Easy Round 2022] 虚空处刑 TEST_105

Description

给定一棵 nn 个节点的树,第 ii 个点有点权 aia_i

定义一个点 xx 所在的极大同色连通块为一个极大的点集 SS,满足 xSx\in S,且对任意点集中的元素 i,ji,j,可以找到一个节点序列 p1,p2,...ptp_1,p_2,...p_t,满足 p1=ip_1=ipt=jp_t=j,且对任意 kk[1,t)[1,t) 中的整数,满足 pkp_kpk+1p_{k+1} 在树上相邻,且 apk=apk+1a_{p_k}=a_{p_{k+1}},且 pkSp_k\in S

mm 次操作:

1 x y:给出一个点 xx ,将其所在的极大同色连通块中每个点的点权修改为 yy

2 x:给出一个点 xx,查询其所在的极大同色连通块的大小。

Input Format

第一行两个数 n,mn,m

第二行 n1n-1 个数,第 ii 个数表示树上第 i+1i+1 的节点的父亲节点的编号,保证父亲节点的编号比该节点小。

第三行 nn 个数,第 ii 个数表示 aia_i

之后 mm 行,每行形如 1 x y2 x,意义如上述。

Output Format

对每个 22 操作,输出一行一个数表示答案。

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

Hint

Idea:nzhtl1477,Solution:nzhtl1477,Code:ccz181078,Data:ccz181078

对于 20%20\% 的数据,满足 n,m2×103n,m\leq2\times 10^3

对于 40%40\% 的数据,满足 n,m2×105n,m\leq2\times 10^5

对于另外 30%30\% 的数据,满足 1ai,y21\le a_i,y\le 2

对于 100%100\% 的数据,满足 1n,m,ai,x,y1061\le n,m,a_i,x,y\le10^6