Problem6410--二分图评定 —— 染色法

6410: 二分图评定 —— 染色法

[Creator : ]
Time Limit : 1.000 sec  Memory Limit : 256 MiB

Description

根据二分图的定义,我们用两种颜色,对所有顶点逐个染色,且相邻顶点染不同的颜色,如果发现相邻顶点染了同一种颜色,就认为此图不为二分图。当所有顶点都被染色,且没有发现同色的相邻顶点,就退出,此图是二分图。
一张无向图是二分图,当且仅当图中无奇环
需要注意的是,若没说明是连通图,需要遍历全部顶点。


给定一个 $n$ 个点 $m$ 条边的无向图,图中可能存在重边和自环。
请你判断这个图是否是二分图。

Input

第一行包含两个整数 $n$ 和 $m$。
接下来 $m$ 行,每行包含两个整数 $u$ 和 $v$,表示点 $u$ 和点 $v$ 之间存在一条边。

Output

如果给定图是二分图,则输出 Yes,否则输出 No。

Constraints

$1≤n,m≤10^5$

Sample 1 Input

4 4
1 3
1 4
2 3
2 4

Sample 1 Output

Yes

Sample 2 Input

3 3
1 2
2 3
3 1

Sample 2 Output

No

Source/Category