编程题
### 问题描述 卓卓和锵锵玩游戏,具体如下:有一棵包含 $N$ 个节点的树,初始时全部未着色。在游戏中,卓卓有两种行动: 1. 命令:用给定的颜色给特定节点着色。 2. 查询:询问锵锵从节点 $a$ 到节点 $b$(两端都包括)的路径是否单色(即路径上所有节点是否颜色相同)。 卓卓可以按任意顺序执行这些步骤,每个节点最多着色一次。每当卓卓向锵锵提出一个查询时,锵锵必须回忆树的着色情况,并回答“是”或“否”。 ### 输入格式 输入的第一行包含一个整数 $N$,表示树中节点的数量。 接下来的 $N-1$ 行包含 $2$ 个以空格分隔的整数 $u$ 和 $v$,表示顶点 $u$ 和顶点 $v$ 之间有一条边。 接下来一行包含一个整数 $Q$ ,表示卓卓想要提出的输入(命令和查询)的数量。 接下来的 $Q$ 行包含 $3$ 个以空格分隔的整数 $x$,$a$,$b$。如果 $x$ 为 $1$,则表示命令,着色节点 $a$ 为颜色 $b$,保证 $0 \leq a \leq N-1$ 和 $1 \leq b \leq 30$。如果 $x$ 为 $2$,则表示查询,锵锵应该回答从节点 $a$ 到节点 $b$(两端都包括)的路径是否单色,保证 $0 \leq a \leq b \leq N-1$。 树的所有顶点都是从 $0$ 开始编号的。 ### 输出格式 对于每个查询,输出 `YES` 或 `NO`,表示从节点 $a$ 到节点 $b$(两端都包括)的路径是否单色。 即使从节点 $a$ 到节点 $b$(两端都包括)的路径上所有节点都未着色,也输出 `NO`。 ### 样例输入 ``` 3 0 1 1 2 7 1 0 11 2 0 1 2 0 2 1 2 12 1 1 11 2 0 1 2 0 2 ``` ### 样例输出 ``` NO NO YES NO ``` ### 评测数据规模 $1 \leq N, Q \leq 10^5$。
查看答案
赣ICP备20007335号-2