Cod sursa(job #1297297)

Utilizator horatiu11Ilie Ovidiu Horatiu horatiu11 Data 21 decembrie 2014 21:35:33
Problema Distante Scor 100
Compilator cpp Status done
Runda tema_vacanta_iarna Marime 0.65 kb
#include <cstdio>
#define N_MAX 50002
using namespace std;
int main() {
    freopen("distante.in","r",stdin);
    freopen("distante.out","w",stdout);
    int best[N_MAX],x,y,c,i,n,m,s,T;
    scanf("%d",&T);
    while(T--)
    {
        scanf("%d%d%d",&n,&m,&s);
        for(i=1;i<=n;i++)
            scanf("%d",&best[i]);
        bool flag=true;
        for(i=1;i<=m;i++)
        {
            scanf("%d%d%d",&x,&y,&c);
            if((best[x]+c<best[y]) || (best[y]+c<best[x]))
                flag=false;
        }
        if(best[s])
            flag=false;
        if(flag==true)printf("DA\n");
        else printf("NU\n");
    }
}