3579 2023. 03. 01 08:58:55 Eyusie Legtávolabbi leszármazott cpp17 Elfogadva 50/50 112ms 17952 KiB
#include <bits/stdc++.h>

using namespace std;

int main()
{
    iostream::sync_with_stdio(0);
    cin.tie(0);

    int n, szulo, gyerek, hossz = 0, lnh = 0;
    cin >> n;
    vector<vector<int>> gyerekek(n);
    set<int> os;
    for(int i = 0; i < n; i++)
    {
        os.insert(i);
    }
    for(int i = 0; i < n-1; i++)
    {
        cin >> szulo >> gyerek;
        gyerekek[szulo-1].push_back(gyerek-1);
        os.erase(gyerek-1);
    }
    int szint = 1;
    int szintdb = 1;
    int kovszintdb = 0;
    queue<int> sor;
    sor.push(*os.begin());
    int akt;
    while(sor.size())
    {
        akt = sor.front();
        sor.pop();
        szintdb--;
        for(int gyerek : gyerekek[akt]) {
            sor.push(gyerek);
            kovszintdb++;
        }
        if(szintdb == 0)
        {
            if(kovszintdb == 0)
            {
                cout <<  akt+1 << "\n";
                return 0;
            }
            swap(szintdb, kovszintdb);

            szint++;

        }
    }
}
Részfeladat Összpont Teszt Verdikt Idő Memória
base 50/50
1 Elfogadva 0/0 3ms 1828 KiB
2 Elfogadva 0/0 101ms 14920 KiB
3 Elfogadva 1/1 3ms 2324 KiB
4 Elfogadva 3/3 2ms 2292 KiB
5 Elfogadva 3/3 3ms 2428 KiB
6 Elfogadva 1/1 3ms 2548 KiB
7 Elfogadva 1/1 3ms 2764 KiB
8 Elfogadva 1/1 3ms 2932 KiB
9 Elfogadva 2/2 79ms 16780 KiB
10 Elfogadva 3/3 79ms 17036 KiB
11 Elfogadva 3/3 3ms 3456 KiB
12 Elfogadva 4/4 112ms 17296 KiB
13 Elfogadva 4/4 111ms 17300 KiB
14 Elfogadva 3/3 9ms 4612 KiB
15 Elfogadva 3/3 103ms 16032 KiB
16 Elfogadva 3/3 96ms 15376 KiB
17 Elfogadva 3/3 104ms 16632 KiB
18 Elfogadva 4/4 72ms 13460 KiB
19 Elfogadva 4/4 96ms 15536 KiB
20 Elfogadva 4/4 112ms 17952 KiB