int pre[107],i,j;
struct node
{
int a,b,lenth;
}path[107];
void init()
{
for(i=0;i<107;i++)
pre[i]=i;
}
int find(int x)
{
while(x!=pre[x])
x=pre[x];
return x;
}
void unio(int x,int y)
{
int a,b;
a=find(x);
b=find(y);
if(a!=b)pre[b]=a;
}
int cmp(const node &a,const node &b)
{
return a.lenth<b.lenth;
}
int main()
{
for(i=0;i<n;i++)
scanf("%d%d%d",&path[i].a,&path[i].b,&path[i].lenth);
sort(path,path+n,cmp);
int sum=0,k=0;
for(i=0;i<n;i++)
{
if(find(path[i].a)!=find(path[i].b))
{
unio(path[i].a,path[i].b);
sum+=path[i].lenth;
}
}
}