Cod sursa(job #970486)

Utilizator gbi250Gabriela Moldovan gbi250 Data 6 iulie 2013 22:10:16
Problema Distante Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.72 kb
#include <cstdio>
#include <vector>
#include <queue>
#include <climits>
#include <cstring>
#define SIZE 50001
using namespace std;
int i, j, n, m, x, y, z, t, s, d[SIZE];
bool sw;
int main()
{
    freopen("distante.in", "r", stdin);
    freopen("distante.out", "w", stdout);
    scanf("%d", &t);
    for(i=1;i<=t;++i)
    {
        scanf("%d %d %d", &n, &m, &s);
        sw=1;
        for(j=1;j<=n;++j)
            scanf("%d", &d[j]);
        if(d[s])
            sw=0;
        for(j=1;j<=m;++j)
        {
            scanf("%d %d %d", &x, &y, &z);
            if(d[x]+z<d[y] || d[x]>d[y]+c)
                sw=0;
        }
        if(!sw)
            printf("NU\n");
        else
            printf("DA\n");
    }
    return 0;
}