Cod sursa(job #992485)

Utilizator vlad96Vlad Zuga vlad96 Data 1 septembrie 2013 22:33:24
Problema Distante Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.68 kb
#include <fstream>

using namespace std;

const int MAX = 50002;

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

int main()
{
    ifstream f("distante.in");
    ofstream g("distante.out");

    f >> t;
    while(t--)
    {
        f >> n >> m >> s;
        for( i = 1; i <= n; ++i)
            f >> v[i];

        int ok = 1;
        for( i = 1; i <= m; ++i)
        {
                f >> x >> y >> c;
                if(v[x] + c < v[y] || v[y] + c < v[x])
                    ok = 0;
        }
        if(v[s])
            ok = 0;

        if(ok)
            g << "DA\n";
        else g << "NU\n";
    }

    f.close();
    g.close();

    return 0;
}