Submission #646179

#TimeUsernameProblemLanguageResultExecution timeMemory
646179jamezzzToy Train (IOI17_train)C++17
0 / 100
2084 ms262144 KiB
#include "train.h" #include <bits/stdc++.h> using namespace std; #define maxn 5005 typedef vector<int> vi; bool vis[maxn]; vi AL[maxn],RAL[maxn]; bool dfs(int u,int rt){ vis[u]=true; for(int v:AL[u]){ if(v==rt)return true; if(vis[v])continue; if(dfs(v,rt))return true; } return false; } vi who_wins(vi a,vi r,vi u,vi v){ int n=a.size(),m=u.size(); vi ans(n,0); for(int i=0;i<m;++i){ AL[u[i]].push_back(v[i]); RAL[v[i]].push_back(u[i]); } for(int i=0;i<n;++i){ for(int j=0;j<n;++j)vis[j]=false; if(r[i]&&dfs(i,i)){ queue<int> q; q.push(i); while(!q.empty()){ int u=q.front(); if(ans[u])continue; for(int v:RAL[u]){ ans[v]=true; q.push(v); } } } } 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...