Pagini recente » Cod sursa (job #840451) | Cod sursa (job #1624222) | Cod sursa (job #479479) | Cod sursa (job #858506) | Cod sursa (job #1479587)
#include <fstream>
using namespace std;
const int kMaxN = 50000;
ifstream fin("distante.in");
ofstream fout("distante.out");
int N, d[kMaxN + 5];
bool Check() {
bool ans = true;
int M, S;
fin >> N >> M >> S;
for (int i = 1; i <= N; ++i)
fin >> d[i];
if (d[S])
ans = false;
while (M--) {
int a, b, c;
fin >> a >> b >> c;
if (d[a] + c < d[b] || d[b] + c < d[a])
ans = false;
}
return ans;
}
int main() {
int T;
fin >> T;
while (T--)
if (Check())
fout << "DA\n";
else
fout << "NU\n";
return 0;
}