w135 @ 2024-11-23 12:33:46
rt
错因:
输入包含若干组测试数据
这是一篇好题解真的不太想让他消失
by laialaodi @ 2024-11-23 12:37:38
哪一篇?@w135
by zxw1234567 @ 2024-11-23 12:40:09
@laialaodi P2839 【畅通工程】
by w135 @ 2024-11-23 12:52:45
可过版本
/*
edges[N*6];
会变成
edges[1e3+10*6]
*/
#include<bits/stdc++.h>
#define ll long long
using namespace std;
ll father[6005],n,m,a,b,ans=-1;
ll find(int x){
if(father[x]==x) return x;
return father[x]=find(father[x]);
}
int main(){
cin>>n;
while(n!=0){
ans=-1;
for(int i=1;i<=n;i++){
father[i]=i;
}
cin>>m;
for(int i=1;i<=m;i++){
cin>>a>>b;
father[find(a)]=find(b);
}
for(int i=1;i<=n;i++){
if(father[i]==i)ans++;
}
cout<<ans<<'\n';
cin>>n;
}
return 0;
}
by w135 @ 2024-11-23 12:55:15
@ghj1222 你最好改一下