#1879. 有向无环图与二分图-课堂案例2

有向无环图与二分图-课堂案例2

题目描述

《二分图判定》

如果图 G = (V,E) 的顶点集 V 可以分为两个互不相交的子集 X 和 Y,使得每条边e ∈E 的两个端点都分别属于 X 和 Y,就称图 G 是一个 二分图(bipartite graph)。给定一个 n 个顶点 m 条边的图,请你判定这个图是否二分图。

输入格式

输入的第一行是 2 个整数 n、m 分别表示顶点个数和边个数。 后面 m 行,每行 2 个整数 u、v,表示顶点u、v之间有一条边。

输出格式

如果这个图是否二分图,输出 yes,否则输出 no。

样例

输入样例 1

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

输出样例 1

yes

输入样例 2

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

输出样例 2

no

输入样例 3

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

输出样例 3

yes

输入样例 4

6 7
1 5
1 6
3 5
3 6
4 5
4 6
5 6

输出样例 4

no

输入样例 5

6 8
1 5
1 6
2 7
3 5
3 6
4 5
4 6
5 6

输出样例 5

no