Submission #583914

#TimeUsernameProblemLanguageResultExecution timeMemory
583914PiejanVDCToy Train (IOI17_train)C++17
0 / 100
5 ms1256 KiB
#include <bits/stdc++.h> #include "train.h" using namespace std; vector<int>tim; vector<int>s,a,r; vector<int>adj[15]; int t = 1; bool dfs(int u) { if(tim[u]) { if(s.back() >= tim[u]) return 1; return 0; } tim[u] = t++; if(r[u]) s.push_back(t-1); bool ok; if(a[u]) { ok = 0; for(auto z : adj[u]) { ok |= dfs(z); } } else { ok = 1; for(auto z : adj[u]) { ok &= dfs(z); } } if(r[u]) s.pop_back(); tim[u] = 0; return ok; } vector<int>who_wins(vector<int>A, vector<int>R, vector<int>u, vector<int>v) { r = R; a = A; int n = r.size(); int m = u.size(); for(int i = 0 ; i < m ; i++) { adj[u[i]].push_back(v[i]); } vector<int>ans(n); for(int i = 0 ; i < n ; i++) { t = 1; tim.clear(); tim.resize(n,0); ans[i] = dfs(i); } 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...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...