Submission #535864

#TimeUsernameProblemLanguageResultExecution timeMemory
535864sliviuSenior Postmen (BOI14_postmen)C++17
0 / 100
1 ms304 KiB
#include <bits/stdc++.h> using namespace std; int main() { int n, m, x, y; cin >> n >> m; vector<vector<pair<int, int>>> G(n + 1); vector<int> seen(m); for (int i = 0; i < m; ++i) { cin >> x >> y; G[x].emplace_back(y, i); G[y].emplace_back(x, i); } stack<int> cur; cur.emplace(1); vector<int> ans; while (!cur.empty()) { int top = cur.top(); if (G[top].empty()) { ans.emplace_back(top); cur.pop(); } else { if (seen[G[top].back().second]) { G[top].pop_back(); continue; } auto [node, e] = G[top].back(); cur.emplace(node); seen[e] = 1; G[top].pop_back(); } } for (auto x : ans) cout << x << ' '; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...