Cod sursa(job #1019756)
| Utilizator | Data | 31 octombrie 2013 21:26:41 | |
|---|---|---|---|
| Problema | Distante | Scor | 100 |
| Compilator | cpp | Status | done |
| Runda | Arhiva de probleme | Marime | 0.72 kb |
#include <iostream>
#include <fstream>
using namespace std;
int t,it,v[50005],bb,n,m,s,i,a,b,c;
int main(void)
{
FILE * f;
f=fopen("distante.in","r");
ofstream g("distante.out");
fscanf(f,"%d",&t);
for (it=1;it<=t;it++)
{
bb=1;
fscanf(f,"%d%d%d",&n,&m,&s);
for (i=1;i<=n;i++)
fscanf(f,"%d",&v[i]);
for (i=1;i<=m;i++)
{
fscanf(f,"%d%d%d",&a,&b,&c);
if (v[a]+c<v[b])
bb=0;
if (v[b]+c<v[a])
bb=0;
}
if (v[s]!=0)
bb=0;
if (bb==1)
g<<"DA\n";
else
g<<"NU\n";
}
g.close();
return 0;
}
