Submission #1257659

#TimeUsernameProblemLanguageResultExecution timeMemory
1257659anha3k25cvpPotemkin cycle (CEOI15_indcyc)C++20
30 / 100
1096 ms1348 KiB
#include <bits/stdc++.h> using namespace std; int n, m; vector<vector<int>> adj; vector<bool> visited; vector<int> path; bool found = false; // Kiểm tra chu trình không có dây tắt bool check_no_chord(const vector<int>& cycle) { int k = cycle.size(); unordered_map<int,int> pos; for (int i = 0; i < k; i++) pos[cycle[i]] = i; for (int i = 0; i < k; i++) { for (int v : adj[cycle[i]]) { if (pos.count(v)) { int j = pos[v]; int dist = abs(i - j); dist = min(dist, k - dist); if (dist > 1) return false; // có dây tắt } } } return true; } void dfs(int u, int start) { if (found) return; for (int v : adj[u]) { if (v == start && path.size() >= 4) { if (check_no_chord(path)) { for (int i = 0; i < (int)path.size(); i++) { if (i) cout << " "; cout << path[i]; } cout << "\n"; found = true; } return; } if (!visited[v]) { visited[v] = true; path.push_back(v); dfs(v, start); path.pop_back(); visited[v] = false; } } } int main() { ios::sync_with_stdio(false); cin.tie(nullptr); cin >> n >> m; adj.assign(n+1, {}); for (int i = 0; i < m; i++) { int u, v; cin >> u >> v; adj[u].push_back(v); adj[v].push_back(u); } visited.assign(n+1, false); for (int s = 1; s <= n && !found; s++) { visited[s] = true; path = {s}; dfs(s, s); visited[s] = false; } if (!found) cout << "no\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...