4409 2023. 03. 27 18:25:29 1478 Legtávolabbi leszármazott cpp17 Elfogadva 50/50 50ms 16512 KiB
#include <bits/stdc++.h>  
#include <random>
 
using namespace std;
 
typedef long long ll;
typedef long double ld;
typedef pair<int,int> p32;
typedef pair<ll,ll> p64;
typedef pair<double,double> pdd;
typedef vector<ll> v64;
typedef vector<int> v32;
typedef vector<vector<int> > vv32;
typedef vector<vector<ll> > vv64;
typedef vector<vector<p64> > vvp64;
typedef vector<p64> vp64;
typedef vector<p32> vp32;
ll MOD = 998244353;
double eps = 1e-12;
#define forn(i,e) for(ll i = 0; i < e; i++)
#define forsn(i,s,e) for(ll i = s; i < e; i++)
#define rforn(i,s) for(ll i = s; i >= 0; i--)
#define rforsn(i,s,e) for(ll i = s; i >= e; i--)
#define ln "\n"
#define dbg(x) cout<<#x<<" = "<<x<<ln
#define mp make_pair
#define pb push_back
#define fi first
#define se second
#define INF 2e18
#define fast_cin() ios_base::sync_with_stdio(false); cin.tie(NULL); cout.tie(NULL)
#define all(x) (x).begin(), (x).end()
#define sz(x) ((ll)(x).size())
 
int main()
{
    fast_cin();
    //ifstream cin("in.txt");
    
    int n;
    cin >> n;

    vector<vector<int>> nb(n + 1);
    vector<bool> son(n + 1);
    for(int i = 1; i <= n; i++){
        int a;
        cin >> a;
        int b;
        cin >> b;
        son[b] = 1;
        nb[a].push_back(b);
        nb[b].push_back(a);
    }
    int gdad;
    for(int i = 1; i <= n; i++){
        if(!son[i]){
            gdad = i;
        }
    }

    //cout << gdad;

    queue<int> q;
    q.push(gdad);
    vector<int> seen(n + 1);
    vector<int> distance(n + 1);
    int maxD = 0, ans;
    while(!q.empty()){
        int f = q.front();
        q.pop();
        seen[f] = 1;
        for(int x : nb[f]){
            if(!seen[x]){
                distance[x] = distance[f] + 1;
                if(distance[x] > maxD){
                    maxD = distance[x];
                    ans = x;
                }
                q.push(x);
            }
        }
    }

    cout << ans;


    return 0;
}
Részfeladat Összpont Teszt Verdikt Idő Memória
base 50/50
1 Elfogadva 0/0 3ms 1828 KiB
2 Elfogadva 0/0 43ms 13524 KiB
3 Elfogadva 1/1 3ms 2380 KiB
4 Elfogadva 3/3 3ms 2560 KiB
5 Elfogadva 3/3 3ms 2784 KiB
6 Elfogadva 1/1 3ms 3256 KiB
7 Elfogadva 1/1 3ms 3236 KiB
8 Elfogadva 1/1 3ms 3512 KiB
9 Elfogadva 2/2 43ms 16324 KiB
10 Elfogadva 3/3 41ms 16260 KiB
11 Elfogadva 3/3 3ms 3524 KiB
12 Elfogadva 4/4 46ms 16188 KiB
13 Elfogadva 4/4 46ms 16256 KiB
14 Elfogadva 3/3 7ms 5144 KiB
15 Elfogadva 3/3 45ms 15400 KiB
16 Elfogadva 3/3 43ms 14752 KiB
17 Elfogadva 3/3 46ms 15792 KiB
18 Elfogadva 4/4 34ms 12924 KiB
19 Elfogadva 4/4 39ms 14436 KiB
20 Elfogadva 4/4 50ms 16512 KiB