90,WA#1,看了数据自测没错
查看原帖
90,WA#1,看了数据自测没错
683531
zyc232008楼主2023/8/15 14:58
#include<bits/stdc++.h>
using namespace std;
int n,p,q,m,f[1005],d[1005];
int find(int x){
	if(f[x]==x){
		return x;
	}
	f[x]=find(f[x]);
}
string opt;
int main(){
	cin>>n>>m;
	for(int i=1;i<+n;i++){
		f[i]=i;
	}
	for(int i=1;i<=m;i++){
		cin>>opt>>p>>q;
		if(opt=="F")f[find(p)]=find(f[q]);
		if(opt=="E"){
			if(d[p]==0) d[p]=find(q);
			else f[find(d[p])]=find(q);
			if(d[q]==0)d[q]=find(p);
			else f[find(d[q])]=find(p);
		}
	}
	int ans=0;
	int count[1005]={0};
	for(int i=1;i<=n;i++){
		count[find(i)]++;
	}
	for(int i=1;i<=n;i++){
		if(count[i])ans++;
	}
	cout<<ans;
}
2023/8/15 14:58
加载中...