Submission #1048101

#TimeUsernameProblemLanguageResultExecution timeMemory
1048101TrentToy Train (IOI17_train)C++17
0 / 100
5 ms1624 KiB
#include "train.h" #include "bits/stdc++.h" using namespace std; #define forR(i, x) for(int i = 0; i < (x); ++i) #define REP(i, a, b) for(int i = (a); i < (b); ++i) #define all(x) x.begin(), x.end() typedef long long ll; typedef vector<int> vi; typedef vector<vi> vvi; typedef vector<ll> vll; typedef vector<vll> vvll; typedef vector<bool> vb; void dfs(int c, vb& vis, vvi& adj) { assert(!vis[c]); vis[c] = true; for(int i : adj[c]) if(!vis[i]) { dfs(i, vis, adj); } } std::vector<int> who_wins(std::vector<int> a, std::vector<int> r, std::vector<int> u, std::vector<int> v) { int n = a.size(), m=u.size(); vvi adj(n); vvi rAdj(n); forR(i, m) { adj[u[i]].push_back(v[i]); rAdj[v[i]].push_back(u[i]); } vb vis(n, false); forR(i, n) { if(r[i] && !vis[i]) { dfs(i, vis, rAdj); } } vector<int> ret(n); forR(i, n) ret[i] = vis[i] ? 1 : 0; return ret; }
#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...