4361 2023. 03. 27 08:53:33 Ablablabla Legtávolabbi leszármazott cpp17 Elfogadva 50/50 83ms 13932 KiB
#include <bits/stdc++.h>

using namespace std;

int main()
{
    int n;
    cin >> n;
    vector<vector<int>> csucsok(n + 1, vector<int>(0, 0));
    vector<bool> kozosOs(n + 1, true);

    for(int i = 0; i < n - 1; i++){
        int a, b;
        cin >> a >> b;
        csucsok[a].push_back(b);
        kozosOs[b] = false;
    }

    int kozos;
    for(int i = 1; i <= n; i++){
        if(kozosOs[i]){
            kozos = i;
            break;
        }
    }

    queue<int> bejar;
    bejar.push(kozos);
    vector<bool> marVolt(n + 1, false);
    marVolt[0] = true;
    int aktualis = 1;
    int kovi = 0;
    int melyseg = 0;
    int valasz = 0;
    /*cout << kozos << "\n";
    for(int i = 1; i <= n; i++){
        for(int x : csucsok[i]){
            cout << x << " ";
        }
        cout << "\n";
    }*/

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

        for(int x : csucsok[akt]){
            if(!marVolt[x]){
                bejar.push(x);
                marVolt[x] = true;
                kovi++;
                //cout << x << " " << bejar.size() << " " << kovi << "\n";
            }
        }

        aktualis--;
        //cout << aktualis << "\n";

        if(aktualis == 0){
            swap(aktualis, kovi);
            melyseg++;
            if(aktualis != 0){
                valasz = bejar.front();
            }
            /*cout << "aktualis: " << aktualis << "\n";
            cout << "melyseg: " << melyseg << "\n";
            cout << "valasz: " << valasz << "\n";*/
        }
    }

    cout << valasz << "\n";
}
Részfeladat Összpont Teszt Verdikt Idő Memória
base 50/50
1 Elfogadva 0/0 3ms 1840 KiB
2 Elfogadva 0/0 74ms 9372 KiB
3 Elfogadva 1/1 3ms 2156 KiB
4 Elfogadva 3/3 3ms 2412 KiB
5 Elfogadva 3/3 3ms 2544 KiB
6 Elfogadva 1/1 2ms 2628 KiB
7 Elfogadva 1/1 3ms 2760 KiB
8 Elfogadva 1/1 3ms 3020 KiB
9 Elfogadva 2/2 79ms 10584 KiB
10 Elfogadva 3/3 79ms 10848 KiB
11 Elfogadva 3/3 3ms 3220 KiB
12 Elfogadva 4/4 82ms 11828 KiB
13 Elfogadva 4/4 81ms 11824 KiB
14 Elfogadva 3/3 8ms 3900 KiB
15 Elfogadva 3/3 75ms 12168 KiB
16 Elfogadva 3/3 71ms 11504 KiB
17 Elfogadva 3/3 76ms 11620 KiB
18 Elfogadva 4/4 57ms 10236 KiB
19 Elfogadva 4/4 68ms 10900 KiB
20 Elfogadva 4/4 83ms 13932 KiB