Pagini recente » Cod sursa (job #1899699) | Cod sursa (job #1069713) | Cod sursa (job #367232) | Cod sursa (job #2220252) | Cod sursa (job #3189432)
#include <bits/stdc++.h>
using namespace std;
ifstream fin("sate.in");
ofstream fout("sate.out");
vector<pair<int, int>>L[30005];
queue<int>q;
int d[30005], dist[30005], vis[30005];
int n, m, X, Y;
void BFS(int nod){
q.push(nod);
dist[nod]=0;
vis[nod]=1;
while(!q.empty()){
int u=q.front();
q.pop();
for(auto i : L[u]){
int v=i.first;
if(vis[v]==0){
vis[v]=1;
dist[v]=dist[u]+i.second;
q.push(v);
}
}
}
}
int main(){
fin>>n>>m>>X>>Y;
for(int i=1;i<=m;i++){
int a, b, c;
fin>>a>>b>>c;
L[a].push_back({b, c});
L[b].push_back({a, -c});
}
BFS(X);
fout<<dist[Y];
return 0;
}