#include<stdio.h>
#include<stdlib.h>
#
int n,v,e[100001][3],i,p[10001],r=0;

int c(const void *x,const void *y)
{
	return ((int*)x)[2]-((int*)y)[2];
}

int a(int x)
{
	return p[x]==x?x:a(p[x]);
}

int main()
{
	scanf("%d%d",&n,&v);
	for(i=0;i<=n;i++)
		p[i]=i;
	for(i=0;i<v;i++)
		scanf("%d%d%d",&e[i][0],&e[i][1],&e[i][2]);
	qsort(e,v,sizeof(int[3]),c);
	for(i=0;i<v;i++)
		if(a(e[i][0])!=a(e[i][1]))
		{
			r+=e[i][2];
			p[a(e[i][0])]=p[a(e[i][1])];
		}
	printf("%d\n",r);
	return 0;
}