# | Time | Username | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
331965 | LushoPlusPlus | 늑대인간 (IOI18_werewolf) | C++14 | 0 ms | 0 KiB |
This submission is migrated from previous version of oj.uz, which used different machine for grading. This submission may have different result if resubmitted.
bool reachable(vector<vector<int> >& adj, int N, int start, int end, int lo, int hi) {
// Can we go from start to end using vertices in range [lo, hi]?
queue<int> que;
vector<bool> vis(N);
if (lo <= start && start <= hi) {
que.push(start);
vis[start] = true;
}
while (!que.empty()) {
int v = que.front();
que.pop();
for (int u : adj[v]) {
if (lo <= u && u <= hi && !vis[u]) {
que.push(u);
vis[u] = true;
}
}
}
return vis[end];
}