7743 2024. 01. 10 21:35:35 Ablablabla Parti (75 pont) cpp17 Elfogadva 75/75 90ms 15976 KiB
#include <bits/stdc++.h>

using namespace std;

int main()
{
    int n;
    cin >> n;

    vector<vector<int>> csucsok(n, vector<int>());
    vector<int> befok(n, 0);

    for(int i = 0; i < n; i++){
        int a, b;
        cin >> a >> b;
        a--; b--;

        csucsok[i].push_back(a);
        csucsok[i].push_back(b);
        befok[a]++;
        befok[b]++;
    }

    queue<int> bejar;
    vector<bool> bejart(n, 0);

    for(int i = 0; i < n; i++){
        if(befok[i] >= 2) continue;

        bejar.push(i);
    }

    while(!bejar.empty()){
        int akt = bejar.front();
        bejar.pop();


        if(bejart[akt]) continue;

        bejart[akt] = 1;

        for(int x : csucsok[akt]){
            befok[x]--;

            if(befok[x] < 2){
                bejar.push(x);
            }
        }
    }

    int valasz = 0;
    for(int i = 0; i < n; i++){
        valasz += !bejart[i];
    }

    cout << valasz << "\n";
    for(int i = 0; i < n; i++){
        if(!bejart[i]){
            cout << i + 1 << " ";
        }
    }
    cout << "\n";
}
Részfeladat Összpont Teszt Verdikt Idő Memória
base 75/75
1 Elfogadva 0/0 3ms 1812 KiB
2 Elfogadva 0/0 46ms 8032 KiB
3 Elfogadva 3/3 3ms 2296 KiB
4 Elfogadva 3/3 3ms 2428 KiB
5 Elfogadva 3/3 3ms 2516 KiB
6 Elfogadva 3/3 3ms 2528 KiB
7 Elfogadva 3/3 3ms 2764 KiB
8 Elfogadva 4/4 3ms 3144 KiB
9 Elfogadva 4/4 3ms 3240 KiB
10 Elfogadva 4/4 4ms 3492 KiB
11 Elfogadva 4/4 4ms 3588 KiB
12 Elfogadva 4/4 4ms 3740 KiB
13 Elfogadva 4/4 4ms 3604 KiB
14 Elfogadva 4/4 6ms 4048 KiB
15 Elfogadva 4/4 46ms 9544 KiB
16 Elfogadva 4/4 54ms 10648 KiB
17 Elfogadva 4/4 63ms 11872 KiB
18 Elfogadva 4/4 72ms 13080 KiB
19 Elfogadva 4/4 81ms 14752 KiB
20 Elfogadva 4/4 90ms 15812 KiB
21 Elfogadva 4/4 90ms 15976 KiB
22 Elfogadva 4/4 3ms 3988 KiB