29452023-02-04 23:31:41nkdorka1212Legtávolabbi leszármazottcpp17Elfogadva 50/5086ms16512 KiB
#include <bits/stdc++.h>

using namespace std;

int main()
{
    int n;
    cin>>n;
    vector<vector<int>>g(n+1);
    vector<int>befok(n+1,0);
    vector<int>dist(n+1,INT_MAX);
    vector<int>vis(n+1,false);
    for(int i=1;i<=n-1;i++)
    {
        int a,b;
        cin>>a>>b;
        g[a].push_back(b);
        befok[b]++;
    }
    int os=0;
    for(int i=1;i<=n;i++)
    {
        if(befok[i]==0)
        {
            os=i;
        }
    }
    queue<int>q;
    q.push(os);
    dist[os]=0;
    while(!q.empty())
    {
        int akt=q.front();
        q.pop();
        for(int x:g[akt])
        {
            if(!vis[x])
            {
                dist[x]=dist[akt]+1;
                vis[x]=true;
                q.push(x);
            }
        }
    }
    int maxh=1;
    for(int i=2;i<=n;i++)
    {
        if(dist[i]>dist[maxh])
        {
            maxh=i;
        }
    }
    cout<<maxh<<"\n";
    return 0;
}
RészfeladatÖsszpontTesztVerdiktIdőMemória
base50/50
1Elfogadva0/03ms1808 KiB
2Elfogadva0/076ms11340 KiB
3Elfogadva1/13ms2220 KiB
4Elfogadva3/33ms2464 KiB
5Elfogadva3/33ms2664 KiB
6Elfogadva1/13ms2916 KiB
7Elfogadva1/13ms2972 KiB
8Elfogadva1/13ms3240 KiB
9Elfogadva2/282ms13340 KiB
10Elfogadva3/381ms13340 KiB
11Elfogadva3/33ms3172 KiB
12Elfogadva4/486ms14240 KiB
13Elfogadva4/486ms14452 KiB
14Elfogadva3/38ms4404 KiB
15Elfogadva3/381ms14536 KiB
16Elfogadva3/375ms13628 KiB
17Elfogadva3/379ms13972 KiB
18Elfogadva4/461ms12176 KiB
19Elfogadva4/474ms13272 KiB
20Elfogadva4/486ms16512 KiB