Cod sursa(job #1450921)

Utilizator robx12lnLinca Robert robx12ln Data 15 iunie 2015 10:27:32
Problema Distante Scor 60
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.65 kb
#include<fstream>
#include<vector>
#define INF 2000000000
using namespace std;
ifstream fin("distante.in");
ofstream fout("distante.out");
int d[36005];
int n,m,a,b,c;
int i,t,S,VAL;
int main(){
    fin>>t;
    for(;t;t--){
        fin>>n>>m>>S;
        for(i=1;i<=n;i++){
            fin>>d[i];
        }
        VAL=0;
        if(d[S]!=0){
            VAL=1;
        }
        for(i=1;i<=m;i++){
            fin>>a>>b>>c;
            if(d[a]>d[b]+c || d[b]>d[a]+c){
                VAL=1;
            }
        }
        if(VAL==0){
            fout<<"DA\n";
        }else{
            fout<<"NU\n";
        }
    }
    return 0;
}