Cod sursa(job #1479606)

Utilizator dnprxDan Pracsiu dnprx Data 31 august 2015 18:18:01
Problema Distante Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.69 kb
#include <bits/stdc++.h>

using namespace std;

int d[50001];
int main()
{
    int i, n, m, S, T, x, y, c, rez;
    ifstream fin("distante.in");
    ofstream fout("distante.out");
    fin >> T;
    for (int pas = 1; pas <= T; pas++)
    {
         rez = 1;
         fin >> n >> m >> S;
         for(i = 1; i <= n; i++)
            fin >> d[i];
         if (d[S] != 0) rez = 0;

         for(i = 1; i <= m; i++)
         {
             fin >> x >> y >> c;
             if(d[x] + c < d[y] || d[y] + c < d[x])
                rez = 0;
         }
         if (rez == 1) fout << "DA\n";
         else fout << "NU\n";
     }
     fin.close();
     fout.close();
     return 0;
}