A83484.Cyclic Components
普及/提高-
通过率:0%
时间限制:1.00s
内存限制:128MB
题目描述
给定一张 n 个点,m 条边的无向图。保证无重边、无自环。在该图的所有连通块中,你需要找出环的个数。
无向图的环的定义如下:
原无向图中的一个子图被定义为环,当且仅当它的点集重新排序后可以满足如下条件:
- 第一个点与第二个点通过一条边相连接;
- 第二个点与第三个点通过一条边相连接;
- ……
- 最后一个点与第一个点通过一条边相连接。
- 所有的边都应当是不同的。
- 其边集不应当包含除了以上所述的边以外的任何边。
这样,我们就称这个子图(点 + 边)为环。
根据定义,一个环至少需要包含三个点,且边数与点数应当是相同的。

例如对于上图,共有 6 个联通块,但只有 [7,10,16] 和 [5,11,9,15] 这两个联通块是环。
输入格式
第一行两个整数 n 和 m (1≤n≤2⋅105,0≤m≤2⋅105),分别表示图的点数和无向边数。
接下来 m 行,第 i 行包含两个整数 vi,ui (1≤vi,ui≤n,ui=vi),表示第 i 条边连接着 vi 与 ui 两点。
输出格式
输出一行一个整数,表示环的个数。
输入输出样例
输入#1
5 4 1 2 3 4 5 4 3 5
输出#1
1
输入#2
17 15 1 8 1 12 5 11 11 9 9 15 15 5 4 13 3 13 4 3 10 16 7 10 16 7 14 3 14 4 17 6
输出#2
2
说明/提示
样例说明
在第一个样例中,只有 [3,4,5] 这个联通块是一个环。
第二个样例就对应着题目解释中的图片。