Cod sursa(job #1500810)

Utilizator bpalaniciPalanici Bogdan bpalanici Data 12 octombrie 2015 18:36:53
Problema Distante Scor 60
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.66 kb
#include <cstdio>
#define N 50002
using namespace std;

int a[N];

int main()
{
    freopen("distante.in", "r", stdin);
    freopen("distante.out", "w", stdout);
    int n, m, s, t, i, x, y, c, ok;
    scanf("%d", &t);
    while(t--)
    {
        scanf("%d%d%d", &n, &m, &s);
        for(i=1;i<=n;i++)
        {
            scanf("%d", &a[i]);
        }
        ok=1;
        for(i=1;i<=m;i++)
        {
            scanf("%d%d%d", &x, &y, &c);
            if(a[x]+c<a[y]||a[y]+c<a[x])
            {
                ok=0;
            }
        }
        if(a[s]) ok=0;
        if(ok) printf("DA\n");
        else printf("NU\n");
    }
}