Cod sursa(job #1282875)

Utilizator marian98Horodnic Gheorghe Marian marian98 Data 4 decembrie 2014 20:32:49
Problema Distante Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.64 kb
#include<iostream>
#include<fstream>
using namespace std;
unsigned n,m,s,D[50001];
int main()
{
    unsigned t;
    ifstream f("distante.in");
    ofstream f1("distante.out");
    f>>t;
    bool corect;
    for (unsigned i=1;i<=t;i++)
    {
        corect=1;
        f>>n>>m>>s;
        for (unsigned j=1;j<=n;j++)
            f>>D[j];
        for (unsigned k=1;k<=m;k++)
        {
            unsigned a,b,c;
            f>>a>>b>>c;
            if (D[a]>D[b]+c || (D[b]>D[a]+c)) corect=0;
        }
        if (D[s]!=0) f1<<"NU\n";
        else if (corect) f1<<"DA\n";
                else f1<<"NU\n";
    }
    return 0;
}