Cod sursa(job #2801241)
Utilizator | Data | 15 noiembrie 2021 16:56:31 | |
---|---|---|---|
Problema | Distante | Scor | 100 |
Compilator | cpp-64 | Status | done |
Runda | Arhiva de probleme | Marime | 0.68 kb |
#include <bits/stdc++.h>
using namespace std;
ifstream fin("distante.in");
ofstream fout("distante.out");
int n, m, t, s;
bool ans;
int dmin[50005];
int main()
{
fin >> t;
int x, y, z;
while(t--)
{
ans = 1;
fin >> n >> m >> s;
for(int i = 1; i <= n; i ++)
fin >> dmin[i];
if(dmin[s] != 0)
ans = 0;
for(int i = 1; i <= m; i ++)
{
fin >> x >> y >> z;
if(dmin[x] + z < dmin[y] || dmin[y] + z < dmin[x])
ans = 0;
}
if(ans)
fout << "DA" << '\n';
else fout << "NU" << '\n';
}
return 0;
}