제출 #1018695

#제출 시각아이디문제언어결과실행 시간메모리
1018695vjudge1Planinarenje (COCI18_planinarenje)C++17
48 / 160
170 ms1208 KiB
#include<bits/stdc++.h> using namespace std; const int N = 5005 * 2; int n, m; vector<int> G[N]; bool seen[N], path[N], s[N]; bool dfs(int v) { seen[v] = path[v] = true; bool dead = true, l = false; for(int u : G[v]) { if(seen[u] && path[u]) continue; dead = false; if(!seen[u]) s[u] = dfs(u); l |= !s[u]; } path[v] = false; if(dead) return false; return l; } int main() { cin >> n >> m; for(int i = 0; i < m ; i++) { int u, v; cin >> u >> v; v += n; G[u].push_back(v); G[v].push_back(u); } for(int i = 1; i <= n; i ++) { cout << (dfs(i) ? "Slavko" : "Mirko") << "\n"; for(int j = 1; j <= 2 * n; j ++) seen[j] = false; } return 0; }
#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...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...