147702025-02-02 11:11:12TakacsAndrasParti (75 pont)cpp17Elfogadva 75/7590ms6832 KiB
#include <bits/stdc++.h>
using namespace std;
int main() {
    int n; cin >> n;
    vector<int> bf(n+1);
    vector<vector<int>> g(n+1);
    for (int i = 1; i <= n; i++) {
        int a,b; cin >> a >> b;
        bf[a]++;
        bf[b]++;
        g[i].push_back(a);
        g[i].push_back(b);
    }
    queue<int> q;
    vector<bool> v(n+1);
    for (int i = 1; i <= n; i++) {
        if (bf[i] < 2) {
            q.push(i);
            v[i] = true;
        }
    }
    while (!q.empty()) {
        int a = q.front();
        q.pop();
        if (--bf[g[a][0]] < 2 && !v[g[a][0]]) {
            q.push(g[a][0]);
            v[g[a][0]] = true;
        }
        if (--bf[g[a][1]] < 2 && !v[g[a][1]]) {
            q.push(g[a][1]);
            v[g[a][1]] = true;
        }
    }
    vector<int> out;
    for (int i = 1; i <= n; i++) {
        if (bf[i] >= 2) out.push_back(i);
    }
    cout << out.size() << '\n';
    for (int x : out) cout << x << ' ';
    cout << '\n';
}
RészfeladatÖsszpontTesztVerdiktIdőMemória
base75/75
1Elfogadva0/01ms316 KiB
2Elfogadva0/043ms3552 KiB
3Elfogadva3/31ms316 KiB
4Elfogadva3/31ms508 KiB
5Elfogadva3/31ms316 KiB
6Elfogadva3/31ms316 KiB
7Elfogadva3/31ms316 KiB
8Elfogadva4/41ms316 KiB
9Elfogadva4/42ms316 KiB
10Elfogadva4/42ms508 KiB
11Elfogadva4/41ms316 KiB
12Elfogadva4/42ms316 KiB
13Elfogadva4/43ms576 KiB
14Elfogadva4/44ms564 KiB
15Elfogadva4/443ms3636 KiB
16Elfogadva4/454ms4320 KiB
17Elfogadva4/461ms4908 KiB
18Elfogadva4/471ms5436 KiB
19Elfogadva4/481ms6248 KiB
20Elfogadva4/490ms6832 KiB
21Elfogadva4/487ms6776 KiB
22Elfogadva4/41ms316 KiB