Submission #258099

#TimeUsernameProblemLanguageResultExecution timeMemory
258099dsjongToy Train (IOI17_train)C++14
11 / 100
1459 ms1784 KiB
#include "train.h" #include <bits/stdc++.h> using namespace std; bool vis[5005], cycle[5005]; vector<int>adj[5005]; bool una=true; void dfs(int x){ if(!una) vis[x]=true; una=false; for(int y:adj[x]){ if(!vis[y]) dfs(y); } } vector<int> who_wins(vector<int> a, vector<int> r, vector<int> u, vector<int> v){ int n=a.size(), m=u.size(); for(int i=0;i<m;i++){ adj[u[i]].push_back(v[i]); } for(int i=0;i<n;i++){ if(r[i]==1){ memset(vis, false, sizeof vis); una=true; dfs(i); if(vis[i]) cycle[i]=true; } } vector<int>ans; for(int i=0;i<n;i++){ una=false; memset(vis, false, sizeof vis); dfs(i); bool good=false; for(int i=0;i<n;i++){ if(r[i] && vis[i] && cycle[i]) good=true; } if(good) ans.push_back(1); else ans.push_back(0); } 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...