#L4000. 「COCI 2023.11」Mostovi

「COCI 2023.11」Mostovi

题目描述

译自 COCI 2023/2024 Contest #1 T5「Mostovi」

Leonhard EulerLeonhard\ Euler 解决了著名的哥尼斯堡七桥问题时,他并不知道他已经发现了一个数学中的全新领域——图论!

不幸的是,七桥问题对于当今的程序员来说已经太简单了,所以 EulerEuler 想到了另一个问题——萨格勒布的桥问题!

萨格勒布的桥形成了一个 nn 个点,mm 条边的图,其中边代表桥,点代表沿河岛屿。这张图是连通的,换句话说,可以从任意节点出发,通过边到达任意其他节点。现在 EulerEuler 问,有多少条边满足移除了它之后图会不连通?

再次,EulerEuler 不知道这个问题在如今也变得非常著名(由于那些天杀的 CodeforcesCodeforces 博客)。所以这道题的作者决定把它变得更难,有多少条边满足移除了它连接的两个点之后,剩下的 n2n-2 个点不连通?


输入格式

第一行两个整数 nnmm (4n100000, n1m300000)(4 \le n \le 100\,000,\ n-1 \le m \le 300\,000),分别表示点数和边数。

接下来 mm 行,每行两个整数 aia_ibib_i (1ai,bin)(1 \le a_i, b_i \le n),表示点 aia_ibib_i 之间有一条边相连。

保证图中没有重边和自环。


输出格式

输出一行一个整数,表示满足性质的边的数量。


样例 1

输入

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

输出

1

通过移除边 (1,3)(1,3) 和它连接的两个点 1133,剩余的图有两个连通分量,点 22 和点 44。换句话说,它是不连通的。容易检查出这是唯一一条满足性质的边。


样例 2

输入

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

输出

4

满足性质的边有 (1,2)(1,2)(2,4)(2,4)(2,6)(2,6)(2,5)(2,5)


数据范围与提示

详细子任务附加限制及分值如下表所示。

子任务编号 附加限制 分值
1 n100, m300n \le 100,\ m \le 300 12
2 n1000, m3000n \le 1\,000,\ m \le 3\,000 15
3 n1000n \le 1\,000 23
4 mn20m - n \le 20 11
5 无附加限制 39