Cod sursa(job #13091)

Utilizator alex_damianDamian Alexandru alex_damian Data 5 februarie 2007 17:05:05
Problema Distante Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.62 kb
#include <cstdio>

#define FIN "distante.in"
#define FOUT "distante.out"
#define MAXN 60001

int t, ok, i;
long n, m, s, a[MAXN], x, y, c, j;

int main () {
	freopen(FIN, "r", stdin);
  freopen(FOUT, "w", stdout);
  scanf("%d", &t);
  for (i=1; i<=t; i++) {
     memset(a, 0, sizeof(a));
     ok = 1;
     scanf("%ld %ld %ld", &n, &m, &s);
     if (!m) ok = 0;
     for (j=1; j<=n; j++) scanf("%ld", &a[j]);
     for (j=1; j<=m; j++) {
        scanf("%ld %ld %ld", &x, &y, &c);
        if (a[x] + c < a[y] || a[y] + c < a[x]) ok = 0;
     }
  	 if (ok) printf("DA\n"); else printf("NU\n");
  }
	return 0;
}