Pagini recente » Cod sursa (job #2108613) | Cod sursa (job #460164) | Cod sursa (job #2600598) | Cod sursa (job #363538) | Cod sursa (job #2600593)
#include <bits/stdc++.h>
#define NMAX 30005
using namespace std;
vector < pair < int, int > > v[NMAX];
int viz[NMAX], n, m, a, b, x, y, c;
void dfs(int nod)
{
for(int i = 0; i < v[nod].size(); ++ i)
{
int fs = v[nod][i].first;
int cost = v[nod][i].second;
if(!viz[fs])
{
viz[fs] = viz[nod] + cost;
dfs(fs);
}
}
}
int main()
{
ifstream f("sate.in");
ofstream g("sate.out");
f >> n >> m >> a >> b;
if(a > b)
swap(a, b);
for(int i = 1; i <= m; ++ i)
{
f >> x >> y >> c;
v[x].push_back(make_pair(y, c));
v[y].push_back(make_pair(x, -c));
}
dfs(a);
g << viz[b] << "\n";
return 0;
}