haooo @ 2020-04-14 18:01:43
#include<bits/stdc++.h>
using namespace std;
int a,b,c;
int par[10005];
int find(int p){
if(par[p]==0){
return p;
}
par[p]=find(par[p]);
return par[p];
}
int main(){
int n,m;
scanf("%d%d",&n,&m);
for(int i=0;i<m;i++){
scanf("%d%d%d",&a,&b,&c);
if(a==1){
par[find(b)]=find(c);
}
else{
if(find(b)==find(c)){
cout<<"Y"<<endl;
}
else cout<<"N"<<endl;
}
}
return 0;
}
为什么会MLE啊啊啊 求助求助
by YosemiteHe @ 2020-04-14 18:02:56
我用空间换回超限的时间。
by critnos @ 2020-04-14 18:03:09
路径压缩写挂了
by critnos @ 2020-04-14 18:03:39
等等都没初始化
by andyli @ 2020-04-14 18:05:24
@haooo
if(par[p]==p)
by critnos @ 2020-04-14 18:08:28
切紫荆花之恋的神仙不会并查集?
by djwj233 @ 2020-04-14 18:09:05
楼上@andyli 正解
by tommy0221 @ 2020-04-14 18:12:10
切紫荆花之恋的神仙不会并查集?
by Elma_ @ 2020-04-14 18:24:28
切紫荆花之恋的神仙不会并查集?
by Adhara @ 2020-04-14 18:24:54
切紫荆花之恋的神仙不会并查集?
by BreakPlus @ 2020-04-14 18:36:52
切紫荆花的神仙不会并查集?