帮个忙,样例都过不了
查看原帖
帮个忙,样例都过不了
1023017
MWL_wma楼主2023/11/24 21:04
#include<bits/stdc++.h>
using namespace std;
int n,m,fa[5002],z,n1;
struct UIiyTYYTTYytyiyTYIGFB{
	int v;
	int x,y;
}l[200002];
bool px(UIiyTYYTTYytyiyTYIGFB a,UIiyTYYTTYytyiyTYIGFB b){return a.v<b.v;}
int find(int x){
	if(x==fa[x]){
		return x;
	}
	return fa[x]=find(fa[x]);
}
int main(){
	scanf("%d%d",&n,&m);
	n1=n;
	for(int i=1;i<=m;i++){
		scanf("%d%d%d",&l[i].x,&l[i].y,& l[i].v);
	}
	for(int i=1;i<=n;i++){
		fa[i]=i;
	}
	sort(l+1,l+1+m,px);
	for(int i=1;i<=m;i++){
		int x1=find(l[i].x),y1=find(l[i].y);
		if(x1-y1){
			--n1;
			fa[l[i].x]=y1;
			z+=l[i].v;
		}
	}
	if(n1>1){
		printf("%d",z);
	}else{
		puts("orz");}
	return 0;
}
2023/11/24 21:04
加载中...