Submission #1694109


Source Code Expand

#include <string>
#include <queue>
#include <stack>
#include <vector>
#include <sstream>
#include <algorithm>
#include <deque>
#include <set>
#include <map>
#include <unordered_set>
#include <unordered_map>
#include <list>
#include <cstdio>
#include <iostream>
#include <cmath>
#include <climits>
#include <bitset>
#include <functional>
#include <numeric>
#include <ctime>
#include <cassert>
#include <cstring>
#include <fstream>

using namespace std;

int main() {
    int n, m;
    cin >> n >> m;
    vector<vector<int>> edges(n);
    for (int i = 0; i < m; i++) {
        int a, b;
        cin >> a >> b;
        a--, b--;
        edges[a].push_back(b);
        edges[b].push_back(a);
    }

    vector<bool> used(n, false);


    list<int> path;
    int n1 = 0, n2 = edges[0][0];
    used[n1] = true, used[n2] = true;
    path.push_back(n1);
    path.push_back(n2);

    while (1) {
        bool flag = false;
        for (auto e : edges[n1]) {
            if (!used[e]) {
                flag = true;
                used[e] = true;
                n1 = e;
                path.push_front(n1);
                break;
            }
        }
        if (!flag)
            break;
    }
    while (1) {
        bool flag = false;
        for (auto e : edges[n2]) {
            if (!used[e]) {
                flag = true;
                used[e] = true;
                n2 = e;
                path.push_back(n2);
                break;
            }
        }
        if (!flag)
            break;
    }
    cout << path.size() << endl;
    bool first = true;
    for (auto t : path) {
        if (first)
            first = false;
        else
            cout << " ";

        cout << t + 1;
    }
    cout << endl;

    return 0;
}

Submission Info

Submission Time
Task B - Hamiltonish Path
User peradfn1126
Language C++14 (GCC 5.4.1)
Score 500
Code Size 1826 Byte
Status AC
Exec Time 93 ms
Memory 9472 KB

Judge Result

Set Name Sample All
Score / Max Score 0 / 0 500 / 500
Status
AC × 3
AC × 19
Set Name Test Cases
Sample sample_01.txt, sample_02.txt, sample_03.txt
All sample_01.txt, sample_02.txt, sample_03.txt, sample_01.txt, sample_02.txt, sample_03.txt, subtask_1_01.txt, subtask_1_02.txt, subtask_1_03.txt, subtask_1_04.txt, subtask_1_05.txt, subtask_1_06.txt, subtask_1_07.txt, subtask_1_08.txt, subtask_1_09.txt, subtask_1_10.txt, subtask_1_11.txt, subtask_1_12.txt, subtask_1_13.txt
Case Name Status Exec Time Memory
sample_01.txt AC 1 ms 256 KB
sample_02.txt AC 1 ms 256 KB
sample_03.txt AC 1 ms 256 KB
subtask_1_01.txt AC 66 ms 3968 KB
subtask_1_02.txt AC 17 ms 896 KB
subtask_1_03.txt AC 60 ms 4096 KB
subtask_1_04.txt AC 70 ms 3584 KB
subtask_1_05.txt AC 70 ms 3584 KB
subtask_1_06.txt AC 71 ms 3584 KB
subtask_1_07.txt AC 77 ms 5888 KB
subtask_1_08.txt AC 75 ms 5760 KB
subtask_1_09.txt AC 93 ms 9472 KB
subtask_1_10.txt AC 22 ms 896 KB
subtask_1_11.txt AC 26 ms 1024 KB
subtask_1_12.txt AC 1 ms 256 KB
subtask_1_13.txt AC 1 ms 256 KB