这题是不是加强数据了。
#include<bits/stdc++.h>
#define N 1e6+10
using namespace std;
long long int arr[200019],err[200019];
struct node{
long long int a,b,c;
}a[200019];
bool cmp(node a,node b){
return a.c>b.c;
}
long long int find(long long int k){
if(arr[k]==k) return k;
return arr[k]=find(arr[k]);
}
int add(int x,int y){
x=find(arr[x]);
y=find(arr[y]);
arr[x]=y;
}
int n,m;
int main(){
cin>>n>>m;
for(int i=1;i<=n;i++) arr[i]=i;
for(int i=1;i<=m;i++){
cin>>a[i].a>>a[i].b>>a[i].c;
}
sort(a+1,a+m+1,cmp);
for(int i=1;i<=m;i++){
int t1=find(a[i].a),t2=find(a[i].b);
if(t1==t2){
cout<<a[i].c;
return 0;
}
else{
if(!err[a[i].a]) err[a[i].a]=a[i].b;
else {
add(err[a[i].a],a[i].b);
}
if(!err[a[i].b]) err[a[i].b]=a[i].a;
else {
add(err[a[i].b],a[i].a);
}
}
}
cout<<0;
return 0;
}