#P12622. [集训队互测 2023day12]树与染色!
[集训队互测 2023day12]树与染色!
题面描述
一棵以1为根的树,一共 $n$ 个节点,每一个节点都有颜色,初始时颜色编号都为 1 。
一共进行 $m$ 次操作,操作有两种:
1 x y
:把以 $x$ 为根的子树的全部节点染成 $y$ 号颜色。2 x
:询问把连接不同颜色的点的边删掉后,$x$ 所在的连通块大小。边不实际删掉。
输入格式
第一行一个整数 $n$ 。
接下来 $n-1$ 行描述这棵树,每行两个整数 $u,v$ ,表示树上的一条边。
第 $n+1$ 行一个整数 $m$ 。
接下来 $m$ 行,每行一个操作,格式如题面所述。
输出格式
对于每一个操作2,输出一行一个整数表示答案。
5
1 2
1 3
2 4
2 5
5
2 2
1 3 2
2 1
1 4 2
2 5
5
4
3
explanation
我们用红色表示1,绿色表示2,这是初始的各点颜色,此时询问节点2的答案是5:
这是第一次修改后的树,此时询问节点1的答案是4:
这是第二次修改后的树,此时询问节点5的答案是3:
10
1 2
2 3
1 4
2 5
3 6
2 7
6 8
8 9
9 10
15
1 4 10
1 2 4
1 1 5
1 7 10
1 8 10
2 8
2 2
1 1 5
1 3 4
1 9 9
1 4 6
2 6
2 1
1 4 4
2 2
3
6
3
4
4
限制与约定
对于所有数据,$1\leq n\leq 10^6$ ,$1\leq m \leq 10^6$ ,$1\leq y\leq n$ 。
测试点编号 | $n\leq$ | $m\leq$ | 特殊限制 |
---|---|---|---|
1~6 | $10^5$ | $10^6$ | $n\times m\leq10^8$ |
7~10 | $10^5$ | 无 | |
11~12 | $10^6$ | $10^6$ | 点 $i$ 的父亲在 $[1,i-1]$ 以内随机生成(点1除外) |
13~14 | $5\times10^5$ | $5\times10^5$ | 无 |
15 | $10^6$ | $10^6$ | 点 $i$ 的父亲是 $i-1$(点1除外) |
16~20 | 无 |
时间限制:2s
空间限制:1024MB
这题有题解