Submission #299086

#TimeUsernameProblemLanguageResultExecution timeMemory
299086jovan_bPlaninarenje (COCI18_planinarenje)C++17
96 / 160
1098 ms888 KiB
#include <bits/stdc++.h> using namespace std; vector <int> graf[10005]; int mt[10005]; bool used[10005]; bool bp(int v) { if (used[v]) return false; used[v] = true; for (auto c : graf[v]) { if(!mt[c] || bp(mt[c])) { mt[c] = v; return true; } } return false; } bool bio[10005]; int main() { int n, m; cin >> n >> m; for(int i=1; i<=m; i++){ int a, b; cin >> a >> b; graf[a].push_back(b); } int mxm = 0; for(int i=1; i<=n; i++){ for(int j=1; j<=n; j++) used[j] = 0; mxm += bp(i); } for(int i=1; i<=n; i++){ bio[mt[i]] = 1; } for(int i=1; i<=n; i++){ if(!bio[i]){ cout << "Mirko\n"; continue; } int tren = 0; for(int j=1; j<=n; j++) mt[j] = 0; for(int j=1; j<=n; j++){ if(j == i) continue; for(int k=1; k<=n; k++) used[k] = 0; tren += bp(j); } if(tren-mxm) cout << "Slavko\n"; else cout << "Mirko\n"; } 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...