Cod sursa(job #1129191)

Utilizator robert_stefanRobert Stefan robert_stefan Data 27 februarie 2014 20:38:17
Problema Distante Scor 10
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.72 kb
#include <fstream>
#define IN "distante.in"
#define OUT "distante.out"
#define NMAX 50005

using namespace std;

ifstream in(IN);
ofstream out(OUT);

int main()
{
    int T, n, m, s, dmin[NMAX], i, a, b, c;
    bool corect;
    in>>T;
    while(T--)
    {
        corect=true;
        in>>n>>m>>s;
        for(i=1; i<=n; ++i)
            in>>dmin[i];
        if(dmin[i]!=0)
            corect=false;
        for(i=1; i<=m && corect; ++i)
        {
            in>>a>>b>>c;
            if(dmin[a] + c < dmin[b] || dmin[b] + c < dmin[a])
                corect=false;
        }
        if(corect)
            out<<"DA\n";
        else out<<"NU\n";
    }
    in.close();
    out.close();
    return 0;
}