Cod sursa(job #403319)

Utilizator dan_10Dan Alexandru dan_10 Data 24 februarie 2010 20:38:28
Problema Distante Scor 60
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.64 kb
#include<stdio.h>

using namespace std;
long max=400000;
int t;
long n,m,d[50050],s,v[50050];
struct dist
{	long x,y,c;
}	a[100200];

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