QOJ.ac

QOJ

Time Limit: 2 s Memory Limit: 1024 MB Total points: 100
[-5]

# 4891. 树上的孤独

Statistics

时间限制2s,内存限制1G

题目背景

有两棵树小 A 和小 B,小 A 发育不良,小 B 发育的很好。

为了追上小 B 的发育,小A 开始了魔改之路。

题目描述

小 A 有 n 个节点,小 B 有 m 个节点。每一个节点都有一种颜色。小 A 和小 B 都以一号节点为根。

为了追赶小 B,小 A 进行了 q 次发育操作。

对于每一次操作先读入一个整数 P 表示操作类型。

P=1,表示一次询问,那么接下来读入四个整数 P1,P2,P3,P4

我们令 lt 为上一次询问的答案,那么令 D1=P3lt,D2=P4ltlt 初始时为 0

小 A 希望你能回答出小 A 的 P1 子树内离 P1 距离不超过 D1 和小 B 的 P2 子树内离 P2 距离不超过 D2 的节点中一共有多少种不同的颜色。

P=2,表示小 A 对自己进行了一次魔改发育,接下来读入两个整数 S1,S2 表示小 A 将自己的 S1 节点的颜色魔改为了 S2

输入格式

第一行读入三个整数 n,m,q

接下来读入 n1 行,每行两个正整数 u,v,表示有一条边连接小 A 的 uv

然后读入 m1 行,每行两个正整数 u,v,表示有一条边连接小 B 的 uv

紧接着读入 n 行,每行一个正整数 v1,第 i 行表示小 A 的第 i 号节点的颜色。

还需要读入 m 行,每行一个正整数 v2,第 i 行表示小 B 的第 i 号节点的颜色。

最后再读入 q 个询问,询问格式见题目描述。

输出格式

对于每一个询问单独输出一行,每行一个整数表示答案。

样例数据

样例输入

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

样例输出

2
2
2
2
3

子任务

n20m2×105q106

P1nP2m1P3,P42×105

  • Subtask 1 (10%): m,q2000
  • Subtask 2 (20%): 不存在 2 操作
  • Subtask 3 (30%): m,q105
  • Subtask 4 (10%): n=1
  • Subtask 5 (30%): 五特殊限制。