Pagini recente » Cod sursa (job #1941826) | Cod sursa (job #2594588) | Cod sursa (job #305752) | Cod sursa (job #2120548) | Cod sursa (job #536165)
Cod sursa(job #536165)
#include<stdio.h>
//#include<fstream>
using namespace std;
FILE *in,*out;
int n,m,S,T,i,x,y,cost,q,dist[50001];
int main()
{
in=fopen("distante.in","rt");
out=fopen("distante.out","wt");
fscanf(in,"%d",&T);
for(q=1;q<=T;q++)
{
fscanf(in,"%d %d %d",&n,&m,&S);
for(i=1;i<=n;i++)
fscanf(in,"%d",&dist[i]);
bool ok=true;
if(dist[S])
ok=false;
for(i=1;i<=m;i++)
{
fscanf(in,"%d %d %d",&x,&y,&cost);
if(dist[x]+cost<dist[y] || dist[y]+cost<dist[x])
{
ok=false;
}
}
if(ok)
fprintf(out,"DA\n");
else
fprintf(out,"NU\n");
}
fclose(in);
fclose(out);
return 0;
}