Pagini recente » Borderou de evaluare (job #1569774) | Cod sursa (job #1233073) | Cod sursa (job #474371) | Cod sursa (job #1142676) | Cod sursa (job #1497315)
#include <bits/stdc++.h>
using namespace std;
#define MAXN 50005
int main()
{
int n, t, m, s, a, b, c, D[MAXN];
freopen("distante.in","r",stdin);
freopen("distante.out","w",stdout);
scanf("%d",&t);
while(t--){
bool ok=true;
scanf("%d%d%d",&n,&m,&s);
for(int i=1; i<=n; ++i)
scanf("%d",&D[i]);
if(D[s])
ok=false;
while(m--){
scanf("%d%d%d",&a,&b,&c);
if(D[a]+c<D[b] || D[b]+c<D[a])
ok=false;
}
if(ok) printf("DA\n");
else printf("NU\n");
}
return 0;
}