Vương quốc Alpha có \(n\) hòn đảo được đánh số từ \(1\) đến \(n\), có \(m\) chiếc cầu cho phép đi lại hai chiều nối trực tiếp các hòn đảo với nhau. Chiếc cầu thứ \(i\) nối hai hòn đảo \(u_i\) và \(v_i\).
Nhằm tăng cường an ninh, Quốc Vương muốn chọn hai hòn đảo khác nhau để xây dựng doanh trại quân đội. Để an toàn, ông muốn nếu có bất kì một cây cầu nào bị phá huỷ thì binh lính của hai doanh trại này vẫn có thể đi lại để tiếp ứng cho nhau được thông qua \(m - 1\) chiếc cầu còn lại.
Yêu cầu: Hãy cho biết có bao nhiêu cách chọn ra hai hòn đảo thoả mãn yêu cầu của Quốc Vương. Biết rằng, chọn hai hòn đảo \((x, y)\) cũng giống chọn hai hòn đảo \((y, x)\), hai phương án được coi là khác nhau nếu có ít nhất một hòn đảo được chọn là khác nhau.
Input
Dữ liệu vào có cấu trúc:
-
Dòng đầu chứa hai số nguyên dương \(n, m\);
-
\(m\) dòng tiếp theo, mỗi dòng chứa hai số \(u, v\) (\(1 \le u, v \le n\), \(u \ne v\)) mô tả có cây cầu nối hòn đảo \(u\) và hòn đảo \(v\). Dữ liệu đảm bảo giữa hai đảo bất kỳ có nhiều nhất một cây cầu nối chúng.
Các số trên một dòng của dữ liệu vào được ghi cách nhau bởi dấu cách.
Ràng buộc:
-
\(30\%\) số test tương ứng với \(30\%\) số điểm có \(n \le 20\), \(m \le 100\);
-
\(20\%\) số test khác tương ứng với \(20\%\) số điểm có \(n \le 100\), \(m \le 1000\);
-
\(20\%\) số test khác tương ứng với \(20\%\) số điểm có \(n \le 1000\), \(m \le 10000\);
-
\(30\%\) số test khác tương ứng với \(30\%\) số điểm có \(n \le 100000\), \(m \le 200000\).
Output
In ra một số duy nhất là số cách chọn hai hòn đảo thoả mãn yêu cầu.
Example
Input:
5 6
3 1
3 2
3 4
5 4
4 1
2 1
Output:
6
Note
Cầu nối đảo \(5\) với đảo \(4\) là cầu duy nhất của đảo \(5\) nên đảo \(5\) không thể được chọn. Bốn đảo \(1, 2, 3, 4\) nằm trong các chu trình và hai đảo bất kỳ trong số chúng luôn còn đường đi khi bỏ đi một cầu bất kì, nên có \(\binom{4}{2} = 6\) cách chọn.
Bình luận
Đăng nhập để bình luận
Chưa có bình luận nào.