#include #include #define POS(i,j) ((i)*n+(j)) void run(void){ int n,m,src,dst; scanf("%d%d%d%d",&n,&m,&src,&dst); int *g=(int *)calloc(n*n,sizeof(int)); while(m--){ int a,b,c; scanf("%d%d%d",&a,&b,&c); g[POS(a,b)]=c; g[POS(b,a)]=c; } int *dp=(int *)calloc(n,sizeof(int)); const int inf=10000*n+1; int i,j; for(i=0;i=n) break; int v=j; can[v]=2; for(j=0;j0 && dp[j]==dp[now]+g[POS(now,j)]){ break; } } now=j; } printf("%d\n",now); return; } int main(void){ run(); return 0; }