10分!!!求助
查看原帖
10分!!!求助
266774
wdzxghl楼主2020/6/16 12:19
#include<bits/stdc++.h>
using namespace std;
const int inf=200010;
int n,m;
struct eg {
	int x,y,w;
} f[inf];
int fa[inf];
bool cmp(eg x,eg y) {
	return x.w<y.w;
}
int find(int x) {
	if(fa[x]!=x)  fa[x]=find(fa[x]);
	return fa[x];
}

int main() {
	cin>>n>>m;
	for(int i=1; i<=m; i++)
		cin>>f[i].x>>f[i].y>>f[i].w;
	int ans=0;
	for(int i=1; i<=n; i++)fa[i]=i;
	sort(f+1,f+m+1,cmp);
	int tot=0;
	for(int j=1; j<=m; j++){
		int x=find(f[j].x);
		int y=find(f[j].y);
		if(x==y)continue;
		ans=max(ans,f[j].w);
		if(++tot==n-1)break;
	}
	cout<<tot<<" "<<ans<<endl;
	return 0;
}
   
   求助大佬,10分WA
2020/6/16 12:19
加载中...