愚人节快乐awa
#include<bits/stdc++.h>
using namespace std;
int n,m,s;
const int maxn=1e5+55;
struct _g{
int u,v,w;
}g[maxn];
int dis[maxn];
#define inf 0x3f3f3f3f
signed main(void){
cin>>n>>m>>s;
for(int i=1;i<=m;i++){
cin>>g[i].u>>g[i].v>>g[i].w;
}
fill(dis+1,dis+1+n,inf);
dis[s]=0;
for(int i=1;i<n-1;i++){
bool f=false;
for(int j=1;j<=m;j++){
int u=g[j].u,v=g[j].v,w=g[j].w;
if(dis[u]==inf) continue;
if(dis[v]>dis[u]+w){
dis[v]=dis[u]+w;
f=true;
}
}
if(f){
break;
}
}
for(int i=1;i<=n;i++){
cout<<dis[i]<<" ";
}
return 0;
}