
USACO 2022 December Contest, Platinum
Problem 2. Making Friends
Contest has ended.

Log in to allow submissions in analysis mode
**Note: the time limit for this problem is 3s, 50% larger than the default.
The memory limit is twice the default.**
Contest has ended. No further submissions allowed.
There are initially M (1≤M≤2⋅105) pairs of friends among FJ's N (2≤N≤2⋅105) cows labeled 1…N. The cows are leaving the farm for vacation one by one. On day i, the i-th cow leaves the farm, and all pairs of the i-th cow's friends still present on the farm become friends. How many new friendships are formed in total?
INPUT FORMAT (input arrives from the terminal / stdin):
The first line contains N and M.The next M lines contain two integers ui and vi denoting that cows ui and vi are friends (1≤ui,vi≤N, ui≠vi). No unordered pair of cows appears more than once.
OUTPUT FORMAT (print output to the terminal / stdout):
One line containing the total number of new friendships formed. Do not include pairs of cows that were already friends at the beginning.SAMPLE INPUT:
7 6 1 3 1 4 7 1 2 3 2 4 3 5
SAMPLE OUTPUT:
5
On day 1, three new friendships are formed: (3,4), (3,7), and (4,7).
On day 3, two new friendships are formed: (4,5) and (5,7).
SCORING:
- Test cases 2-3 satisfy N≤500.
- Test cases 4-7 satisfy N≤104.
- Test cases 8-17 satisfy no additional constraints.
Problem credits: Benjamin Qi