Pagini recente » Cod sursa (job #701931) | Cod sursa (job #2828488) | Cod sursa (job #592829) | Cod sursa (job #2070664) | Cod sursa (job #3004792)
#include <fstream>
#include <vector>
using namespace std;
ifstream fin("sate.in");
ofstream fout("sate.out");
const int N = 3e4;
vector <pair <int, int>> adj[N + 1];
bool viz[N + 1];
void dfs(int nod, int target, int dist){
if(nod == target){
fout << dist << '\n';
exit(0);
}
viz[nod] = true;
for(auto vec : adj[nod])
if(!viz[vec.first])
dfs(vec.first, target, dist + vec.second);
}
int main(){
int n, m, x, y;
fin >> n >> m >> x >> y;
for(int i = 1; i <= m; i++){
int a, b, c;
fin >> a >> b >> c;
adj[a].push_back({b, c});
adj[b].push_back({a, -c});
}
dfs(x, y, 0);
return 0;
}