Cod sursa(job #2600598)

Utilizator blotucosmincosmin blotucosmin Data 12 aprilie 2020 21:24:05
Problema Sate Scor 0
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.7 kb
#include <bits/stdc++.h>

using namespace std;

vector < pair < int, int > > v[30005];
int viz[30005], n, m, a, b, x, y, c;

void dfs(int nod)
{
    for(int i = 0; i < v[nod].size(); ++ i)
    {
        if(!viz[v[nod][i].first])
        {
            v[nod][i].first = viz[nod] + v[nod][i].second;
            dfs(v[nod][i].first);
        }
    }
}
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;
}