Cjb 公主又被 Heltion 抓走了!她的骑士 Little Sub 和 Little Potato 正前往 Heltion 王国去营救她。
Heltion 王国由 $n$ 个岛屿组成,编号为 $1$ 到 $n$。王国里有 $m$ 座桥,其中第 $i$ 座桥连接第 $l_i$ 个岛屿和第 $r_i$ 个岛屿。骑士们可以双向通过每座桥。
两位骑士分别在第 $v$ 个和第 $w$ 个岛屿登陆,他们开始前往关押公主的第 $u$ 个岛屿。然而,由于骑士们很胖,且桥梁不稳定,如果他们在旅途中经过一座或多座公共桥梁,就会有压塌桥梁并落入水中的风险。
因此,为了成功接回公主,需要两条没有公共桥梁的路径:一条从第 $v$ 个岛屿出发并通往第 $u$ 个岛屿,另一条从第 $w$ 个岛屿出发并通往第 $u$ 个岛屿。
由于公主经常被抓,骑士们会向你寻求 $q$ 次帮助。每次,给定他们的起点岛屿和目标岛屿,你需要告诉他们是否可以找到满足上述约束的两条路径。
输入格式
输入包含多组测试数据。输入的第一行包含一个整数 $T$,表示测试数据的组数。对于每组测试数据:
第一行包含三个整数 $n$,$m$ 和 $q$($1 \le n \le 10^5$,$0 \le m \le 2 \times 10^5$,$1 \le q \le 10^5$),分别表示岛屿的数量、桥梁的数量和询问的数量。
接下来的 $m$ 行描述了这些桥梁。第 $i$ 行包含两个整数 $l_i$ 和 $r_i$($1 \le l_i, r_i \le n$),表示第 $i$ 座桥连接的两个岛屿。请注意,不同的桥梁可能会连接同一对岛屿,且一座桥可能会将一个岛屿连接到它自身。
接下来的 $q$ 行描述了询问。第 $i$ 行包含三个整数 $u_i$,$v_i$ 和 $w_i$($1 \le u_i, v_i, w_i \le n$),分别表示关押公主的岛屿以及两位骑士的起点岛屿。
保证所有测试数据的 $n$ 之和不超过 $5 \times 10^5$,所有测试数据的 $m$ 之和不超过 $10^6$,所有测试数据的 $q$ 之和不超过 $5 \times 10^5$。
输出格式
对于每组测试数据,输出 $q$ 行,表示询问的答案。对于每个询问,如果可以找到满足约束的两条路径,则输出 "Yes"(不含引号),否则输出 "No"(不含引号)。
样例
输入样例 1
2 6 7 4 1 2 2 3 3 1 4 5 5 6 6 4 1 4 4 1 3 1 4 2 1 2 3 1 3 3 2 1 2 1 2 1 1 1 2 1 2
输出样例 1
No Yes Yes Yes Yes Yes
说明
对于第一组样例测试数据:
- 对于第 2 个询问,我们可以选择路径 4-1 和 2-1。
- 对于第 3 个询问,我们可以选择路径 2-1 和 3-1。
- 对于第 4 个询问,我们可以选择路径 3-1 和 3-2-1。
对于第二组样例测试数据:
- 对于第 1 个询问,由于骑士和公主最初在同一个岛屿上,因此答案为 "Yes"。
- 对于第 2 个询问,由于其中一位骑士最初与公主在同一个岛屿上,他不需要跨过任何桥梁。另一位骑士可以直接从岛屿 1 前往岛屿 2。