Pagini recente » Istoria paginii utilizator/1gabriellac61100ye9 | Statistici Radu Andrei (RaduAndreiG) | Monitorul de evaluare | Statistici Florea Alexandru (flwr) | Cod sursa (job #781649)
Cod sursa(job #781649)
#include <fstream>
#define NM 50010
using namespace std;
ifstream f("distante.in");
ofstream g("distante.out");
int N,M,S,i,j,a,b,c;
int D[NM];
string ANS[2]= {"NU","DA"};
int T;
bool Solve ()
{
f >> N >> M >> S;
for (i=1; i<=N; i++)
f >> D[i];
bool ok=D[S]==0;
for (i=1; i<=M; i++)
{
f >> a >> b >> c;
if (D[a]+c<D[b]) ok=0;
if (D[b]+c<D[a]) ok=0;
}
return ok;
}
int main ()
{
for (f >> T; T; --T)
{
g << ANS[Solve()] << '\n';
}
f.close();
g.close();
return 0;
}