Cod sursa(job #2600593)

Utilizator blotucosmincosmin blotucosmin Data 12 aprilie 2020 21:21:11
Problema Sate Scor 80
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.75 kb
#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;
}