```
#include<iostream>
#include<cstdio>
#include<algorithm>
using namespace std;
const int maxn=200005;
struct node{
int u,v,w;
}e[maxn];
int m,n,ans;
int fa[maxn];
bool cmp(node a,node b)
{
return a.w <b.w ;
}
int getfa(int x)
{
if(x==fa[x])
return x;
else fa[x]=getfa(fa[x]);
}
void krsk()
{
int cnt=0;
for(int i=1;i<=m;i++)
{
int x=e[i].u ,y=e[i].v ;
int fax=getfa(x),fay=getfa(y);
if(fax==fay)
continue;
ans+=e[i].w ;
fa[fax]=fay;
if(++cnt==n-1)
break;
}
}
int main()
{
cin>>n>>m;
for(int i=1;i<=n;i++)
fa[i]=i;
for(int i=1;i<=m;i++)
{
cin>>e[i].u >>e[i].v >>e[i].w ;
}
sort(e+1,e+1+m,cmp);
krsk();
if(ans!=0)
cout<<ans;
else
cout<<"orz";
return 0;
}
```
by 绫小路帆波 @ 2019-11-13 22:12:58
你可以下载数据试试
by dreamtouch @ 2019-11-13 22:13:47
@[沨谟](/user/235864) 我照着题解看发现没有问题。。
by 绫小路帆波 @ 2019-11-13 22:14:15