SP8425 BTCODE_G - Coloring Trees
题目描述
Nivash 和 Bhoopathi 正在玩一个记忆游戏,具体玩法如下:有一棵包含 $N$ 个节点的树,所有节点一开始都是未着色的。在游戏中,Nivash 可以进行两种操作:
1. 命令:用特定颜色给某个节点着色。
2. 查询:询问 Bhoopathi 从节点 $a$ 到节点 $b$(包括两端节点)的路径是否是单色的,也就是路径上的所有节点颜色是否相同。
Nivash 可以自由选择操作的执行顺序,并且每个节点最多只能被着色一次。当 Nivash 提出查询时,Bhoopathi 需要根据树的着色情况回答“YES”或“NO”。你能帮助 Bhoopathi 做出正确的回答吗?
输入格式
第一行输入一个整数 $N$,代表树中的节点数量。接下来的 $N-1$ 行每行有两个用空格分隔的整数 $u$ 和 $v$,表示节点 $u$ 和节点 $v$ 之间有一条边。然后输入一个整数 $Q$,表示 Nivash 想要发出的命令和查询的总数。接下来的 $Q$ 行每行有三个用空格分隔的整数 $x$、$a$ 和 $b$。如果 $x$ 是 1,表示将节点 $a$ 用颜色 $b$ 着色。如果 $x$ 是 2,表示进行查询,Bhoopathi 需要判断从节点 $a$ 到节点 $b$ 的路径是否是单色的。
树中的所有节点编号从 0 开始。
输出格式
对于每个查询,输出“YES”或“NO”,表示从节点 $a$ 到节点 $b$(包括这两个节点)的路径是否是单色的。
注意:如果从节点 $a$ 到节点 $b$ 的路径上所有节点都是未着色的,也要输出“NO”。
## 数据范围
- $1 \leq N \leq 100000$
- $1 \leq Q \leq 200000$
- $1 \leq \text{颜色值} \leq 30$
**本翻译由 AI 自动生成**
说明/提示
Constraints:
1$\leq$N$\leq$100000
1$\leq$Q$\leq$200000
1$\leq$color value$\leq$30.