Problem A: 连通图

Memory Limit:128 MB Time Limit:1.000 S
Judge Style:Text Compare Creator:
Submit:11 Solved:7

Description

给定一张包含n个结点与m条边的无向图,结点依次以1 2 ... n 编号,第 i 条边(1<=i<=m )连接结点 ui与结
点vi 。如果从一个结点经过若干条边可以到达另一个结点,则称这两个结点是连通的。
你需要向图中加入若干条边,使得图中任意两个结点都是连通的。请你求出最少需要加入的边的条数。
注意给出的图中可能包含重边与自环。

Input

第一行,两个正整数n,m ,表示图的点数与边数。
接下来m行,每行两个正整数 ui, vi,表示图中一条连接结点 ui 与结点 v的边。

Output

输出一行,一个整数,表示使得图中任意两个结点连通所需加入的边的最少数量。

Sample Input Copy

4 4
1 2
2 3
3 1
1 4

Sample Output Copy

0

HINT

对于 40% 的测试点,保证 1<=n<=100, 1<=m<=100。
对于所有测试点,保证 1<=n<=105, 1<=m<=105, 。