Lớp học nhảy (Contest Practice VNOI 2021 Round 2)
Xem PDFMột lớp học nhảy có \(n\) học viên nam và \(n\) học viên nữ. Cho \(m\) thông tin về các cặp học viên, thông tin thứ \(k\) \((1 \leq k \leq m)\) cho biết học viên nam thứ \(i_{k}\) \((1 \leq i_{k} \leq n)\) có thể nhảy cặp với học viên nữ thứ \(j_{k}\) \((1 \leq j_{k} \leq n)\). Trong một buổi học, sau khi hướng dẫn cho tất cả các học viên, thầy giáo muốn chọn ra hai đôi nhảy, mỗi đôi gồm hai học viên (một nam và một nữ) để trình diễn và rút kinh nghiệm. Trong quá trình biểu diễn, hai cặp này sẽ đổi bạn nhảy cho nhau, do đó, thầy giáo muốn lựa chọn ra hai đôi nhảy mà khi đổi bạn nhảy, hai học viên ở đôi nhảy mới vẫn có thể nhảy cặp với nhau.
Yêu cầu: Cho \(m\) thông tin về các cặp học viên, hãy đếm số cách chọn hai cặp nhảy thỏa mãn. Hai cặp nhảy được gọi khác nhau nếu tồn tại một người thuộc vào hai cặp nhảy này nhưng không thuộc hai cặp nhảy kia.
Input
-
Dòng đầu chứa hai số nguyên dương \(n, m\) \((1 \leq n, m \leq 10^{5}, m \leq n{2})\)
-
Dòng thứ \(k\) \((1 \leq k \leq m)\) trong \(m\) dòng tiếp theo chứa hai số nguyên \(i_{k}, j_{k}\) \((1 \leq i_{k}, j_{k} \leq m)\) mô tả thông tin về cặp học viên thứ \(k\).
Output
- In ra một số nguyên là số cách chọn hai cặp nhảy thỏa mãn.
Scoring
- Subtask \(1\) (\(20\%\) số điểm): \(n \leq 50\).
- Subtask \(2\) (\(20\%\) số điểm): \(n \leq 300\).
- Subtask \(3\) (\(20\%\) số điểm): \(n \leq 1000, m \leq 20000\).
- Subtask \(4\) (\(20\%\) số điểm): \(n \leq 5000, m \leq 20000\).
- Subtask \(5\) (\(20\%\) số điểm): không có rằng buộc gì thêm.

Bình luận