Pagini recente » Cod sursa (job #338562) | Cod sursa (job #1897500) | Cod sursa (job #702349) | Cod sursa (job #88377) | Cod sursa (job #2720892)
#include <cstdio>
#include <algorithm>
using namespace std;
int dist[50005];
int f[50005];
int main()
{ freopen("distante.in", "r", stdin);
freopen("distante.out", "w", stdout);
int t,n,m,s,i,x,y,z,ok;
scanf("%d", &t);
while(t){
scanf("%d%d%d", &n, &m, &s);
ok=0;
f[s]=1;
for(i=1; i<=n; i++)
scanf("%d", &dist[i]);
for(i=1; i<=m; i++){
scanf("%d%d%d", &x, &y, &z);
if(abs(dist[x]-dist[y])>z)
ok=1;
if(abs(dist[x]-dist[y])==z){
if(dist[x]<dist[y])
f[y]=1;
else
f[x]=1;
}
}
for(i=1; i<=n && f[i]==1; i++);
if(i!=n+1)
ok=1;
if(ok==0)
printf("DA\n");
else
printf("NU\n");
for(i=1; i<=n; i++)
f[i]=0;
t--;
}
return 0;
}