#include"stdio.h"
int a[1005][1005];
bool used[1005];
int dis[1005];
int main()
{
int t,n,i,j,k,x,y,s,tmin;
for(i=0;i<1005;i++)
for(j=0;j<1005;j++)
a[i][j]=99999999;
for(i=0;i<1005;i++)
{
used[i]=0;
a[i][i]=0;
dis[i]=99999999;
}
scanf("%d %d",&t,&n);
for(i=0;i<t;i++)
{
scanf("%d %d %d",&x,&y,&s);
if(a[x][y]>s)
{
a[x][y]=s;
a[y][x]=s;
}
}
for(i=1;i<=n;i++)
dis[i]=a[1][i];
for(i=1;i<=n;i++)
{
tmin=99999999;
for(j=1;j<=n;j++)
{
if(!used[j]&&dis[j]<tmin)
{
tmin=dis[j];
k=j;
}
}
used[k]=1;
for(j=1;j<=n;j++)
{
if(dis[j]>dis[k]+a[k][j])
dis[j]=dis[k]+a[k][j];
}
}
printf("%d\n",dis[n]);
return 0;
}