Submission #1326717

#TimeUsernameProblemLanguageResultExecution timeMemory
1326717i_am_blindfoldSenior Postmen (BOI14_postmen)C++20
0 / 100
3 ms2360 KiB
#include <bits/stdc++.h>
using namespace std;

const int N = 5e5 + 5;

vector<pair<int, int>> adj[N];
vector<int> vis(N, 0);
vector<int> path;

void dfs(int u) {
    while (!adj[u].empty()) {
        auto [v, i] = adj[u].back();
        adj[u].pop_back();
        if (vis[i]) continue;
        vis[i] = 1;
        dfs(v);
    }
    path.push_back(u);
}

int main() {
    ios::sync_with_stdio(false); 
    cin.tie(nullptr);

    int n, m;
    cin >> n >> m;

    for (int i = 0; i < m; i++) {
        int a, b;
        cin >> a >> b;
        adj[a].push_back({b, i});
        adj[b].push_back({a, i});
    }

    dfs(1);

    reverse(path.begin(), path.end());
    for (int i = 0; i < (int)path.size() - 1; i++) {
        cout << path[i] << ' '; 
    }
    cout << '\n';

    return 0;
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...