```c
#include<stdio.h>
int main()
{
int n,m;
scanf("%d%d",&n,&m);
int a[m],b[m],c[m],dis[n],inf=99999;
dis[0]=0;
for(int i=1;i<m;i++){
dis[i]=inf;
}
int first[m],next[m];
for(int i=0;i<m;i++){
first[i]=-1;
}
for(int i=0;i<m;i++){
scanf("%d%d%d",&a[i],&b[i],&c[i]);
next[i]=first[a[i]];
first[a[i]]=i;
}
int book[m],q[101]={0},head=0,tail=0;
for(int i=0;i<m;i++){
book[i]=0;
}
q[tail]=0;
tail++;
book[0]=1;
while(head<tail){
int k = first[q[head]];
while(k!=-1){
if(dis[b[k]]>dis[a[k]]+c[k]){
dis[b[k]]=dis[a[k]]+c[k];
if(book[b[k]]==0){
book[b[k]]=1;
q[tail]=b[k];
tail++;
}
}
k=next[k];
}
book[q[head]]=0;
head++;
}
for(int i=0;i<n;i++){
printf("%d ",dis[i]);
}
return 0;
}