1117 2022. 03. 03 23:50:48 peti1234 Legtávolabbi leszármazott cpp14 Elfogadva 50/50 67ms 33364 KiB
#include <bits/stdc++.h>

using namespace std;
const int c=100005;
int n, szint[c];
vector<int> sz[c];
bool f[c];
void dfs(int a) {
    // egy melysegi bejarassal rekurzivan mindnekire ki lehet szamolni azt, hogy milyen tavoli utod
    for (auto x:sz[a]) {
        szint[x]=szint[a]+1;
        dfs(x);
    }
}
int main()
{
    ios_base::sync_with_stdio(false);
    cin >> n;
    for (int i=1; i<n; i++) {
        int a, b;
        cin >> a >> b;
        sz[a].push_back(b);
        f[b]=1;
    }
    // az a kozos os, aki senkinek sem fia a listan (sosem szerepelt a masodik sorban)
    for (int i=1; i<=n; i++) {
        if (!f[i]) {
            dfs(i);
        }
    }
    // minimum kivalasztas
    int p=1;
    for (int i=1; i<=n; i++) {
        if (szint[i]>szint[p]) {
            p=i;
        }
    }
    cout << p << "\n";
    return 0;
}
Részfeladat Összpont Teszt Verdikt Idő Memória
base 50/50
1 Elfogadva 0/0 4ms 6472 KiB
2 Elfogadva 0/0 39ms 11352 KiB
3 Elfogadva 1/1 3ms 7620 KiB
4 Elfogadva 3/3 3ms 7620 KiB
5 Elfogadva 3/3 3ms 7620 KiB
6 Elfogadva 1/1 3ms 7624 KiB
7 Elfogadva 1/1 3ms 7632 KiB
8 Elfogadva 1/1 4ms 7664 KiB
9 Elfogadva 2/2 37ms 12944 KiB
10 Elfogadva 3/3 43ms 14064 KiB
11 Elfogadva 3/3 3ms 9920 KiB
12 Elfogadva 4/4 50ms 20528 KiB
13 Elfogadva 4/4 46ms 21684 KiB
14 Elfogadva 3/3 7ms 12648 KiB
15 Elfogadva 3/3 43ms 22976 KiB
16 Elfogadva 3/3 43ms 24900 KiB
17 Elfogadva 3/3 50ms 24764 KiB
18 Elfogadva 4/4 32ms 22744 KiB
19 Elfogadva 4/4 39ms 26244 KiB
20 Elfogadva 4/4 67ms 33364 KiB