我一个nt写了朴素并查集过了样例全WA,能不能有大佬出个数据点搞搞我
查看原帖
我一个nt写了朴素并查集过了样例全WA,能不能有大佬出个数据点搞搞我
236980
王炸拆开打楼主2020/10/18 10:14

下面是代码(不要嘲笑我啊……)

#include<iostream>
#include<cstdio>
using namespace std;
int n,m;
int fa[10001];
int father_iFind(int x){
	if(fa[x]==x) return x;
	return fa[x]=father_iFind(fa[x]);
}
int main(){
	scanf("%d%d",&n,&m);
	for(int i=1;i<=n;i++) fa[i]=i;
	for(int k=1;k<=m;k++){
		string s;
		int u,v;
		cin>>s;cin>>u>>v;
		if(s[0]=='C'){
			int x=father_iFind(u);
			int y=father_iFind(v);
			fa[x]=y;
		}
		else if(s[0]=='D'){
			fa[v]=v;
		}
		else{
			int x=father_iFind(u);
			int y=father_iFind(v);
			if(x==y) printf("Yes\n");
			else printf("No\n");
		}
	}
	return 0;
} 
2020/10/18 10:14
加载中...