#include<iostream> #include<algorithm> using namespace std; int f[20000],n; struct node { int u,v,val; bool operator < (node&a) const { return val<a.val; } }e[20000]; int findx(int x) { if(x==f[x])return x; return f[x]=findx(f[x]); } int main() { int k,ans,x,y; while(cin>>n) { ans=0; k=(n*(n-1))/2; for(int i=1;i<=n;i++) f[i]=i; for(int i=0;i<k;i++) cin>>e[i].u>>e[i].v>>e[i].val; sort(e,e+k); for(int i=0;i<k;i++) { x=findx(e[i].u); y=findx(e[i].v); if(x!=y) { ans+=e[i].val; f[x]=y; n--; if(!n)break; } } cout<<ans<<endl; } return 0; }