翻面通行证
该比赛已结束,您无法在比赛模式下递交该题目。您可以点击“在题库中打开”以普通模式查看和递交本题。
翻面通行证
题目描述
给定一个包含 个节点与 条边的无向图。
你在图上行走时,会同时维护一个变量 。变量 只可能等于 或 。
图中的每条边都有一个权值 ,其中 。
当你经过一条权值为 的边时,变量 会变成:
其中 表示按位异或。
也就是说:
- 如果 ,经过这条边后, 不变;
- 如果 ,经过这条边后, 会在 和 之间切换。
此外,图中的某些节点是特殊点。
当你位于特殊点时,可以立刻把 改成 或 中的任意一个值,也可以选择不修改。
现给出 次独立的询问。每次询问包含四个整数 ,代表:
- 你从节点 出发;
- 出发时 ;
- 你想要到达节点 ;
- 到达节点 时,要求 。
你可以重复经过同一个节点或同一条边,也可以选择不经过任何边,直接停留在原地。
请你判断,对于每次询问,是否存在一种合法的行走路线满足上述要求。
输入格式
第一行包含三个整数 ,分别表示图的节点数、边数和询问次数。
第二行包含一个长度为 的字符串 :
- 如果 ,表示第 个节点是特殊点;
- 如果 ,表示第 个节点不是特殊点。
接下来 行,每行包含三个整数 ,表示节点 和节点 之间有一条无向边。
经过这条边时,变量 会变成 。
接下来 行,每行包含四个整数 ,表示一次询问。
数据范围
- ,且保证
- 保证输入的图中没有自环,但可能存在重边。
输出格式
对于每次询问,如果存在满足条件的行走路线,输出 YES;否则输出 NO。
输入输出样例 #1
输入 #1
6 4 6
010000
1 2 1
2 3 0
4 5 1
5 6 0
1 3 0 0
1 3 0 1
4 6 0 1
4 6 0 0
1 6 0 1
2 2 0 1
输出 #1
YES
YES
YES
NO
NO
YES
说明/提示
在样例中,只有节点 是特殊点。
-
第 1 组询问 :
从节点 出发,初始 。
先经过边 ,这条边的权值为 ,所以:
到达节点 后,由于节点 是特殊点,可以把 改成 。
然后经过边 ,这条边的权值为 ,所以 保持为 。
最终到达节点 时,,满足要求,答案为
YES。 -
第 2 组询问 :
同样从节点 走到节点 ,经过边 后, 变成 。
这次在节点 不修改 ,然后经过边 。
最终到达节点 时,,满足要求,答案为
YES。 -
第 4 组询问 :
从节点 到节点 只能经过路径:
两条边的权值分别为 和 ,所以最终状态为:
这个连通块中没有特殊点,因此无法额外修改 。
所以不可能在到达节点 时使 ,答案为
NO。 -
第 6 组询问 :
起点和终点都是节点 。
由于节点 本身就是特殊点,可以原地把 从 改成 。
因此答案为
YES。