#include <bits/stdc++.h>
using namespace std;
int n, m, s, t;
int a[500086], b[500086], w[500086];
int dist[500086];
const int inf = 0x3f3f3f3f;
int main () {
scanf("%d%d%d%d", &n, &m, &s, &t);
for (int i = 1; i <= m; i++)
scanf("%d%d%d", &a[i], &b[i], &w[i]);
for (int i = 1; i <= n; i++)
if (i == s) dist[i] = 0;
else dist[i] = inf;
for (int i = 1; i <= n; i++) {
bool flag = false;
for (int i = 1; i <= m; i++) {
if (min(dist[a[i]] + w[i], dist[b[i]]) < dist[b[i]]) {
dist[b[i]] = min(dist[a[i]] + w[i], dist[b[i]]);
flag = true;
}
}
if (!flag) break;
}
printf("%d", dist[t]);
return 0;
}
样例也不对 …… 输出的是 3
哪位巨佬帮帮萌新啊 qwq