Pagini recente » Cod sursa (job #862332) | Cod sursa (job #3272824) | Cod sursa (job #1607659) | Cod sursa (job #664841) | Cod sursa (job #1096860)
#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-- && Valid)
{
scanf("%d%d%d",&node1,&node2,&cost);
Valid = !(Dist[node1] > Dist[node2] + cost || Dist[node2] > Dist[node1] + cost);
}
if(Valid)
printf("DA\n");
else
printf("NU\n");
}
return 0;
}