Cod sursa(job #1804547)

Utilizator BlackLordFMI Alex Oprea BlackLord Data 12 noiembrie 2016 18:40:16
Problema Distante Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.68 kb
#include<fstream>

using namespace std;

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

const int N = 50010;

int t, v[N], x, y, c, i, n, m, s, ok;

int main() {
    fin >> t;
    while (t--) {
        fin >> n >> m >> s;
        ok = 1;
        for (i = 1; i <= n; ++i) {
            fin >> v[i];
        }
        if (v[s]) {
            ok=0;
        }
        for (i = 1; i <= m; ++i) {
            fin >> x >> y >> c;
            if (v[x] + c < v[y] || v[y] + c < v[x]) {
                ok=0;
            }
        }
        if(ok) {
            fout << "DA\n";
        } else {
            fout << "NU\n";
        }
    }
    return 0;
}