Cod sursa(job #1989157)

Utilizator BlackLordFMI Alex Oprea BlackLord Data 6 iunie 2017 10:16:10
Problema Sate Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.63 kb
#include <fstream>

using namespace std;

ifstream fin ("sate.in");
ofstream fout ("sate.out");

const int N = 30010, M = 100025;

int n, m, a, b, v[N], x[M], y[M], z[M], i;

int main() {
    fin >> n >> m >> a >> b;
    v[a] = 1;
    for (i = 1; i <= m; ++i) {
        fin >> x[i] >> y[i] >> z[i];
    }
    while (!v[b]) {
        for (i = 1; i <= m; ++i) {
            if (v[ x[i] ] && !v[ y[i] ]) {
                v[ y[i] ] = v[ x[i] ] + z[i];
            }
            else if (!v[ x[i] ] && v[ y[i] ]) {
                v[ x[i] ] = v[ y[i] ] - z[i];
            }
        }
    }
    fout << v[b] - 1;
}