#4389. 新朋友(NewFriends)

新朋友(NewFriends)

题目描述

有一个由NN个用户使用的社交网络,用户编号从11NN。在这个社交网络中,两个用户可以成为"朋友"。朋友关系是双向的;如果用户XX是用户YY的朋友,那么用户YY也一定是用户XX的朋友。

目前,社交网络上有MM对朋友关系,第i对朋友关系由用户AiA_iBiB_i组成。

请确定以下操作最多可以执行多少次:

  • 操作:选择三个用户XXYYZZ,使得XXYY是朋友,YYZZ是朋友,但XXZZ不是朋友。然后让XXZZ成为朋友。

输入格式

输入从标准输入中以下列格式给出:

NN MM

A1A_1 B1B_1

\vdots

AMA_M BMB_M

输出格式

输出所求答案。

样例

4 3
1 2
2 3
1 4
3
3 0
0
10 8
1 2
2 3
3 4
4 5
6 7
7 8
8 9
9 10
12

样例解释

【样例1说明】
可以发生三次新的朋友关系,如下:

  • 用户1与用户3成为朋友,3是1的朋友(用户2)的朋友
  • 用户3与用户4成为朋友,4是3的朋友(用户1)的朋友
  • 用户2与用户4成为朋友,4是2的朋友(用户1)的朋友

不可能有四次或更多的新朋友关系。
【样例2说明】
如果最初没有朋友关系,就不可能产生新的朋友关系。

数据范围

  • 2N2×1052 \leq N \leq 2 \times 10^5
  • 0M2×1050 \leq M \leq 2 \times 10^5
  • 1Ai<BiN1 \leq A_i < B_i \leq N
  • (Ai,Bi)(A_i, B_i)对是互不相同的。
  • 所有输入值都是整数。

来源

  • AtCoder ABC350D