rt
#include<bits/stdc++.h>
#define int long long
#define MAXN 1e9
using namespace std;
struct A{
int v,len;
friend bool operator < (const A &x,const A &y){
return x.len>y.len;
}
};
vector<A> a[10005];
int n,m;
int f[10005];
int ans;
priority_queue<A> q;
signed main(){
ios::sync_with_stdio(0);
cin.tie(0);
cin >> n >> m;
for(int i=1;i<=n;i++){
int u,v,len;
cin >> u >> v >> len;
a[u].push_back({v,len});
a[v].push_back({u,len});
}
q.push({1,0});
for(int i=1;i<=n;i++){
A t;
while(!q.empty()){
t=q.top();
q.pop();
if(f[t.v]==0) break;
}
f[t.v]++;
ans+=t.len;
for(int j=0;j<a[t.v].size();j++){
if(f[a[t.v][i].v]==0){
q.push(a[t.v][i]);
}
}
}
cout << ans;
return 0;
}