Pagini recente » Cod sursa (job #749202) | Cod sursa (job #2739827) | Cod sursa (job #822429) | Cod sursa (job #2374412) | Cod sursa (job #1096863)
#include <cstdio>
using namespace std;
#define NMAX 50005
int Dist[NMAX];
int N,M,S,T;
int main()
{
freopen("distante.in","r",stdin);
freopen("distante.out","w",stdout);
scanf("%d",&T);
while(T--)
{
bool Valid = true;
scanf("%d%d%d",&N,&M,&S);
for(int i=1;i<=N;i++)
scanf("%d",&Dist[i]);
if(Dist[S])
Valid = false;
int node1,node2,cost;
while(M--)
{
scanf("%d%d%d",&node1,&node2,&cost);
if(Dist[node1] > Dist[node2] + cost || Dist[node2] > Dist[node1] + cost)
Valid = false;
}
if(Valid)
printf("DA\n");
else
printf("NU\n");
}
return 0;
}