Submission #1276802

#TimeUsernameProblemLanguageResultExecution timeMemory
1276802sepantaNewspapers (CEOI21_newspapers)C++17
4 / 100
1 ms664 KiB
#include <bits/stdc++.h> using namespace std; vector<vector<int>> adj; vector<int> seq; vector<bool> visited; void dfs(int u, int p) { seq.push_back(u); visited[u] = true; for (int v : adj[u]) { if (!visited[v]) { dfs(v, u); seq.push_back(u); // backtrack } } } int main() { ios::sync_with_stdio(false); cin.tie(nullptr); int N, M; 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); } // If M >= N → there is a cycle, no guaranteed strategy if (M >= N) { cout << "NO\n"; return 0; } visited.assign(N + 1, false); dfs(1, -1); cout << "YES\n"; cout << seq.size() << "\n"; for (int i = 0; i < (int)seq.size(); i++) { cout << seq[i] << (i + 1 == (int)seq.size() ? '\n' : ' '); } return 0; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...