沧桑の天骄 @ 2017-07-30 21:36:40
#include<algorithm>
#include<iostream>
#include<cstdlib>
#include<cstring>
#include<cstdio>
#include<cmath>
using namespace std;
int f[10001] ;
char o[200001];
int find(int x)
{
if(f[x]!=x)
return find(f[x]);
else
return x;
}
void tty(int w,int c)
{
f[c]=w;
}
int main()
{
int x,y,n,m,e=0;
cin>>n>>m;
for(int i=1;i<=n;i++)
f[i]=i;
for(int i=1;i<=m;i++)
{
cin>>x>>y;
int w=find(x);
int c=find(y);
if(w!=c)
{
tty(w,c);
}
}
for(int i=1;i<=n;i++)
{
for(int j=i+1;j<=n;j++)
{
if(find(i)!=find(j))
{
e++;
f[j]=find(i);
}
}
}
cout<<e<<endl;
return 0;
}
//我哪错了