Pagini recente » Cod sursa (job #2350100) | Cod sursa (job #2261003) | Cod sursa (job #576657) | Cod sursa (job #1824179) | Cod sursa (job #1128579)
#include <cstdio>
#include <vector>
#include <queue>
using namespace std;
int main() {
int t, n, m, i, x, y, k, s, c, d[50002];
bool v;
freopen("distante.in", "r", stdin);
freopen("distante.out", "w", stdout);
scanf("%d", &t);
for (k = 1; k <= t; k++) {
scanf("%d %d %d", &n, &m, &s);
v = true;
for (i = 1; i <= n; i++) scanf("%d", &d[i]);
if (d[s] != 0) {
v = false;
}
for (i = 1; i <= m; i++) {
scanf("%d %d %d", &x, &y, &c);
if ((d[x] + c < d[y]) || (d[y] + c < d[x])) {
v = false;
}
}
if (v == true) printf("DA\n");
else printf("NU\n");
}
return 0;
}