全场最短代码!
  • 板块P1111 修复公路
  • 楼主qwe777
  • 当前回复30
  • 已保存回复30
  • 发布时间2025/2/1 14:40
  • 上次更新2025/2/1 21:55:08
查看原帖
全场最短代码!
1288382
qwe777楼主2025/2/1 14:40
#include<bits/stdc++.h>
using namespace std;
int fa[989898];
struct node{int x,y,t;}e[989898];
bool operator < (node a,node b){return a.t<b.t;}
int find(int x){if(x!=fa[x])fa[x]=find(fa[x]);return fa[x];}
int n,m,num,ans;
int main(){
	scanf("%d%d",&n,&m);
	for(int i=1;i<=n;i++)fa[i]=i;
	for(int i=1;i<=m;i++) scanf("%d%d%d",&e[i].x,&e[i].y,&e[i].t);
	sort(e+1,e+1+m);
	for(int i=1;i<=m;i++){
		int x=find(e[i].x),y=find(e[i].y);
		if(x==y)continue;fa[x]=y;num++;ans=max(ans,e[i].t);
	}
	if(num!=n-1)printf("-1\n");
	else printf("%d\n",ans);
	return 0;
}

20行!有谁的更短!有比我短的我把头砍了!

2025/2/1 14:40
加载中...