蒟蒻求助,全都MLE
  • 板块P1111 修复公路
  • 楼主congya
  • 当前回复2
  • 已保存回复2
  • 发布时间2023/10/19 23:23
  • 上次更新2023/11/2 12:39:31
查看原帖
蒟蒻求助,全都MLE
989962
congya楼主2023/10/19 23:23

过不了样例。。。

#include<bits/stdc++.h>
using namespace std;

int village[1010];
struct road{
	int x,y,t;
}c[100010];

bool cmp(road q,road w){
	return q.t<w.t;
}

int find(int q){
	if(village[q]==0){
		return q;
	}else{
		return village[q]=find(village[q]);
	}
}

void join(int q1,int q2){
	village[find(q1)]=find(q2);
}

int main(){
	//freopen("1.txt","r",stdin);
	int n=0,m=0;
	
	cin>>n>>m;
	for(int i=1;i<=m;i++){
		scanf("%d%d%d",&c[i].x,&c[i].y,&c[i].t);
	}
	sort(c+1,c+1+m,cmp);
	
//	for(int i=1;i<=m;i++){
//		cout<<c[i].t;
//	}
	
	for(int i=1;i<=m;i++){
		bool a=0;
		for(int j=1;j<=n;j++){
			if(find(j)==0){
				if(a){
					cout<<c[j].t;
					return 0;
				}else{
					a=1;
				}
			}
		}
		
		join(c[i].x,c[i].y);
		
	}
	
	for(int j=1;j<=n;j++){
		cout<<find(j);
	}
	
	cout<<"-1";
}
2023/10/19 23:23
加载中...