6041: 【系列题】图论(十二)寻找图中是否存在路径

Memory Limit:128 MB Time Limit:1.000 S
Judge Style:Text Compare Creator:
Submit:6 Solved:3

Description

有一个具有 n 个顶点的 双向 图,其中每个顶点标记从 0 到 n - 1(包含 0 和 n - 1)。图中的边用一个长度为 m 的二维整数数组 edges 表示,其中 edges[i] = [ui, vi] 表示顶点 ui 和顶点 vi 之间的双向边。 每个顶点对由 最多一条 边连接,并且没有顶点存在与自身相连的边。

请你确定是否存在从顶点 source 开始,到顶点 destination 结束的 有效路径 。

给你数组 edges 和整数 n、source 和 destination,如果从 source 到 destination 存在 有效路径 ,则输出 yes,否则输出 no 。

示例1:

 



输入:n = 3, edges = [[0,1],[1,2],[2,0]], source = 0, destination = 2 

输出:yes 

解释:存在由顶点 0 到顶点 2 的路径: - 0 → 1 → 2 - 0 → 2

示例2:

输入:n = 6, edges = [[0,1],[0,2],[3,5],[5,4],[4,3]], source = 0, destination = 5 

输出:no 

解释:不存在由顶点 0 到顶点 5 的路径.

Input

第一行两个整数 n 和 m

接下来 m 行,每行两个整数,分别表示有连接的两个顶点

最后一行两个整数 source 和 destination

Output

yes 或者 no,即 source 和 destination 之间是否有路径

Sample Input Copy

3 3
0 1
1 2
2 0
0 2

Sample Output Copy

yes

HINT

数据范围:

1 <= n <= 2 * 105

0 <= m <= 2 * 105

edges[i].length == 2

0 <= ui, vi<= n - 1

ui!= vi

0 <= source, destination <= n - 1

不存在重复边

不存在指向顶点自身的边