Submission #771890

#TimeUsernameProblemLanguageResultExecution timeMemory
771890alvingogoWerewolf (IOI18_werewolf)C++14
0 / 100
4037 ms23452 KiB
#include <bits/stdc++.h> #include "werewolf.h" #pragma GCC optimize("Ofast") #define AquA cin.tie(0);ios_base::sync_with_stdio(0); #define fs first #define sc second #define p_q priority_queue using namespace std; vector<int> check_validity(int n, vector<int> x, vector<int> y, vector<int> s, vector<int> e, vector<int> l, vector<int> r) { int q=s.size(); vector<int> ans(q); int m=x.size(); vector<vector<int> > f(n); for(int i=0;i<m;i++){ f[x[i]].push_back(y[i]); f[y[i]].push_back(x[i]); } for(int i=0;i<q;i++){ queue<int> q1; q1.push(s[i]); vector<int> vis(n),vis2(n); while(q1.size()){ auto h=q1.front(); q1.pop(); for(auto y:f[h]){ if(y>=l[i] && !vis[y]){ vis[y]=1; q1.push(y); } } } q1.push(e[i]); while(q1.size()){ auto h=q1.front(); q1.pop(); for(auto y:f[h]){ if(y<=r[i] && !vis2[y]){ vis2[y]=1; q1.push(y); } } } for(int j=0;j<n;j++){ if(vis[j]+vis2[j]==2){ ans[i]=1; } } } return ans; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...