文章
82
粉丝
344
获赞
28
访问
703.1k
#include <iostream>
using namespace std;
const int maxn=1050;
int f[maxn];
int n,m;
void init(int n){
for(int i=1;i<=n;i++)
f[i]=i;
}
int find(int x){
if(f[x]==x) return x;
else return find(f[x]);
}
void merge(int x,int y){
x=find(x);
y=find(y);
if(x!=y){
f[y]=x;
}
}
int main(){
while(scanf("%d %d",&n,&m)!=EOF){
int flag=0;
init(n);
while(m--){
int x,y;
cin>>x>>y;
merge(x,y);
...
登录后发布评论
暂无评论,来抢沙发