43922023-03-27 12:33:25gyjazminLegtávolabbi leszármazottcpp11Accepted 50/50128ms24008 KiB
#include <iostream>
#include <vector>
#include <bits/stdc++.h>
#include <set>

using namespace std;
vector<vector<int>> fa;

int maxszint=0;
int maxertek=0;
void rek(int aktelem,int szint){

    if (fa[aktelem].size()==0)
    {
        if(szint>maxszint)
        {
            maxszint = szint;
            maxertek =aktelem;
        }
    }
    else{
        for (int x : fa[aktelem])
            rek(x,szint+1);
    }
}


int main()
{
    iostream::sync_with_stdio(0);    cin.tie(0);
    int N;
    cin >> N;
    fa.resize(N+1);
    set<int> kozosos;
    for (int i=0; i<N;i++)
        kozosos.insert(i+1);
    for (int i=0; i<N-1;i++)
    {
        int egyik;
        int masik;
        cin >> egyik >> masik;
        fa[egyik].push_back(masik);
        kozosos.erase(masik);
    }
    for (int x:kozosos)
        rek(x,0);
    cout << maxertek;
    return 0;
}
SubtaskSumTestVerdictTimeMemory
base50/50
1Accepted0/03ms1828 KiB
2Accepted0/097ms14960 KiB
3Accepted1/13ms2232 KiB
4Accepted3/32ms2456 KiB
5Accepted3/32ms2576 KiB
6Accepted1/12ms2652 KiB
7Accepted1/13ms2788 KiB
8Accepted1/13ms3216 KiB
9Accepted2/279ms17284 KiB
10Accepted3/378ms17228 KiB
11Accepted3/33ms3588 KiB
12Accepted4/4118ms20692 KiB
13Accepted4/4114ms20924 KiB
14Accepted3/39ms5388 KiB
15Accepted3/3101ms19584 KiB
16Accepted3/393ms20336 KiB
17Accepted3/3109ms20516 KiB
18Accepted4/476ms15832 KiB
19Accepted4/494ms18884 KiB
20Accepted4/4128ms24008 KiB