#C1564. J10 实践-5 SlavicG最爱的问题

J10 实践-5 SlavicG最爱的问题

J10 实践-5 SlavicG最爱的问题

题目描述

给你一棵有 nn 个顶点的加权树。回顾一下,树是一个没有任何循环的连接图。加权树是一棵树,其中每条边都有一定的权重。这棵树是无定向的,它没有根。

由于树让你感到厌烦,你决定挑战自己,在给定的树上玩一个游戏。

在一次移动中,你可以从一个节点移动到它的一个邻居(与它有直接边的另一个节点)。

你从一个最初等于 00 的变量 xx 开始。当你通过边 ii 时,xx 的值变为 x XOR wix\ XOR\ w_i(其中 wiw_i 是第 ii 条边的权重)。

你的任务是从顶点 aa 到顶点 bb,但你被允许进入节点 bb,当且仅当旅行到它之后,xx 的值将变成 00。换句话说,你只能通过使用边 ii,使 x XOR wi=0x\ XOR\ wi=0 来旅行到节点 bb

此外,你可以在任何时间点最多传送一次到任何顶点,除了顶点 bb。你可以从任何顶点传送,甚至从 aa 点传送。

如果你能从 aa 到达顶点 bb,就回答 "是",否则回答 "否"。

输入格式

第一行包含一个整数 tt--测试数据的组数。

每个测试组的第一行包含三个整数 nnaabb--顶点的数量,以及分别是起始节点和期望的结束节点。

接下来的 n1n-1 行中的每一行表示树的一条边。边 ii 由三个整数 uiu_iviv_iwiw_i表示--它连接的顶点的编号和边的权重。

输出格式

对于每个测试案例,如果你能到达顶点 bb,则输出 "YES",否则输出 "NO"。

样例输入

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

样例输出

YES
NO
YES

样例分析

对于第一个测试样例,可以从节点 11 到节点 33xx00 变成 11,然后从节点 33 到节点 22xx 变成等于 33。现在,可以传送到节点 33,从节点 33 到节点 44,到达节点 bb,因为 xx 最后变成等于 00,所以我们应该回答 "YES"。

对于第二个测试样例,没有移动,因为不能传送到节点 bb,唯一的移动是前往节点 22 ,这是不可能的,因为到达节点 22xx 不会等于 00,所以我们应该回答 "NO"。

数据范围

对于 100%100\% 的数据,1t10001 \le t \le 10002n1052 \le n \le 10^51a,bn,ab1 \le a,b \le n,a \ne b1ui,vin,uivi1 \le u_i,v_i \le n,u_i \ne v_i1wi1091 \le w_i \le 10^9 ,可以保证所有测试案例的 nn 之和不超过 10510^5