#include "werewolf.h"
#include<bits/stdc++.h>
using namespace std;
#define ff first
#define ss second
#define all(x) x.begin(), x.end()
using ll = long long;
using pii = pair<int,int>;
using pll = pair<ll,ll>;
template<typename T>
using matrix = vector<vector<T>>;
std::vector<int> check_validity(int N, std::vector<int> X, std::vector<int> Y,
std::vector<int> S, std::vector<int> E,
std::vector<int> L, std::vector<int> R) {
matrix<int> g(N);
for(int i = 0; i < X.size(); i++){
g[X[i]].push_back(Y[i]);
g[Y[i]].push_back(X[i]);
}
int Q = S.size();
std::vector<int> ans(Q);
vector<int> c1(N), c2(N);
auto dfs =[&](int id, int l, int r,vector<int>&check, auto dfs)->void{
check[id] = 1;
for(int i : g[id]){
if(check[i] || i > r || i < l)
continue;
dfs(i,l,r,check,dfs);
}
};
for(int i = 0; i < Q; i++){
fill(all(c1),0);
fill(all(c2),0);
dfs(S[i],L[i],N,c1,dfs);
dfs(E[i],0,R[i],c2,dfs);
for(int j = 0; j < N; j++){
ans[i]|=c1[j]&&c2[j];
}
}
return ans;
}
Compilation message
werewolf.cpp: In function 'std::vector<int> check_validity(int, std::vector<int>, std::vector<int>, std::vector<int>, std::vector<int>, std::vector<int>, std::vector<int>)':
werewolf.cpp:18:22: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
18 | for(int i = 0; i < X.size(); i++){
| ~~^~~~~~~~~~
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Correct |
1 ms |
212 KB |
Output is correct |
2 |
Correct |
0 ms |
212 KB |
Output is correct |
3 |
Correct |
1 ms |
212 KB |
Output is correct |
4 |
Correct |
0 ms |
212 KB |
Output is correct |
5 |
Correct |
1 ms |
212 KB |
Output is correct |
6 |
Correct |
1 ms |
212 KB |
Output is correct |
7 |
Correct |
1 ms |
212 KB |
Output is correct |
8 |
Correct |
1 ms |
212 KB |
Output is correct |
9 |
Correct |
1 ms |
212 KB |
Output is correct |
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Correct |
1 ms |
212 KB |
Output is correct |
2 |
Correct |
0 ms |
212 KB |
Output is correct |
3 |
Correct |
1 ms |
212 KB |
Output is correct |
4 |
Correct |
0 ms |
212 KB |
Output is correct |
5 |
Correct |
1 ms |
212 KB |
Output is correct |
6 |
Correct |
1 ms |
212 KB |
Output is correct |
7 |
Correct |
1 ms |
212 KB |
Output is correct |
8 |
Correct |
1 ms |
212 KB |
Output is correct |
9 |
Correct |
1 ms |
212 KB |
Output is correct |
10 |
Correct |
291 ms |
760 KB |
Output is correct |
11 |
Correct |
169 ms |
620 KB |
Output is correct |
12 |
Correct |
24 ms |
680 KB |
Output is correct |
13 |
Correct |
329 ms |
648 KB |
Output is correct |
14 |
Correct |
207 ms |
620 KB |
Output is correct |
15 |
Correct |
254 ms |
748 KB |
Output is correct |
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Execution timed out |
4038 ms |
26500 KB |
Time limit exceeded |
2 |
Halted |
0 ms |
0 KB |
- |
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Correct |
1 ms |
212 KB |
Output is correct |
2 |
Correct |
0 ms |
212 KB |
Output is correct |
3 |
Correct |
1 ms |
212 KB |
Output is correct |
4 |
Correct |
0 ms |
212 KB |
Output is correct |
5 |
Correct |
1 ms |
212 KB |
Output is correct |
6 |
Correct |
1 ms |
212 KB |
Output is correct |
7 |
Correct |
1 ms |
212 KB |
Output is correct |
8 |
Correct |
1 ms |
212 KB |
Output is correct |
9 |
Correct |
1 ms |
212 KB |
Output is correct |
10 |
Correct |
291 ms |
760 KB |
Output is correct |
11 |
Correct |
169 ms |
620 KB |
Output is correct |
12 |
Correct |
24 ms |
680 KB |
Output is correct |
13 |
Correct |
329 ms |
648 KB |
Output is correct |
14 |
Correct |
207 ms |
620 KB |
Output is correct |
15 |
Correct |
254 ms |
748 KB |
Output is correct |
16 |
Execution timed out |
4038 ms |
26500 KB |
Time limit exceeded |
17 |
Halted |
0 ms |
0 KB |
- |