7941 2024. 01. 12 08:04:59 Boti Elágazás nélküli úton levő települések (50 pont) cpp17 Hibás válasz 4/50 27ms 4376 KiB
#include <bits/stdc++.h>

using namespace std;

int n, m;
vector<int> a;
vector<int> b;
vector<int> utak;
vector<int> o (0);

void bejar(int c, int d)
{
    for (int i = 0; i < m; i++)
    {
        if (a[i] == c && b[i] != d)
        {
            o.push_back(b[i]);
            if (utak[b[i]] <= 2)
            {
                bejar(b[i], c);
            }
        }
        if (b[i] == c && a[i] != d)
        {
            o.push_back(a[i]);
            if (utak[a[i]] <= 2)
            {
                bejar(a[i], c);
            }
        }
    }
}

int main()
{
    cin >> n >> m;
    a.resize(m);
    b.resize(m);
    utak.resize(n +1, 0);
    for (int i = 0; i < m; i++)
    {
        cin >> a[i] >> b[i];
        utak[a[i]]++;
        utak[b[i]]++;
    }
    for (int i = 1; i <= n; i++)
    {
        if (utak[i] == 1)
        {
            bejar(i, -1);
        }
    }
    cout << o.size() << endl;
    for (int i = 0; i < o.size(); i++)
    {
        cout << o[i] << " ";
    }
    return 0;
}
Részfeladat Összpont Teszt Verdikt Idő Memória
base 4/50
1 Elfogadva 0/0 3ms 1880 KiB
2 Hibás válasz 0/0 26ms 2764 KiB
3 Hibás válasz 0/2 3ms 2556 KiB
4 Hibás válasz 0/2 3ms 2616 KiB
5 Elfogadva 2/2 3ms 2816 KiB
6 Hibás válasz 0/2 3ms 2824 KiB
7 Hibás válasz 0/2 3ms 2736 KiB
8 Hibás válasz 0/2 4ms 2968 KiB
9 Hibás válasz 0/2 6ms 3280 KiB
10 Hibás válasz 0/2 8ms 3528 KiB
11 Elfogadva 2/2 13ms 3684 KiB
12 Hibás válasz 0/2 14ms 3684 KiB
13 Hibás válasz 0/3 4ms 3532 KiB
14 Hibás válasz 0/3 6ms 3556 KiB
15 Hibás válasz 0/3 8ms 3852 KiB
16 Hibás válasz 0/3 19ms 3736 KiB
17 Hibás válasz 0/3 19ms 3948 KiB
18 Hibás válasz 0/3 25ms 3968 KiB
19 Hibás válasz 0/3 25ms 4016 KiB
20 Hibás válasz 0/3 25ms 4376 KiB
21 Hibás válasz 0/3 26ms 4308 KiB
22 Hibás válasz 0/3 27ms 4312 KiB