216632026-01-13 17:52:12algoproLegtávolabbi leszármazottcpp17Hibás válasz 39/50109ms10968 KiB
// UUID: 6f3bea57-1287-4822-8684-0b6b4f37d6c1
#include <bits/stdc++.h>
using namespace std;

vector<vector<int>> graf;

pair<int, int> dfs(int u, int v) {
    int maxx=0, maxv=v;
    pair<int, int> c;
    for(auto x : graf[v]) {
        if(x != u){
            c = dfs(v, x);
            //cerr << c.first << ' ' << c.second << '\n';
            if(c.first > maxx) {
                maxx = c.first;
                maxv = c.second;
            }
        }
    }
    return {maxx+1, maxv};
}

int main() {
	int n, o = 0; cin >> n;
    graf.resize(n+1);
    for(int i=0;i<n;i++) {
        int a, f; cin >> a >> f;
        if(o == 0 || o == f) o = a;
        graf[a].push_back(f);
        graf[f].push_back(a);
    }

    //cerr << o;
    cout << dfs(o, o).second;

}
RészfeladatÖsszpontTesztVerdiktIdőMemória
base39/50
1Elfogadva0/01ms316 KiB
2Elfogadva0/082ms5424 KiB
3Elfogadva1/11ms508 KiB
4Elfogadva3/31ms316 KiB
5Hibás válasz0/31ms316 KiB
6Elfogadva1/11ms316 KiB
7Elfogadva1/11ms316 KiB
8Hibás válasz0/12ms316 KiB
9Elfogadva2/297ms5872 KiB
10Elfogadva3/397ms5976 KiB
11Elfogadva3/31ms316 KiB
12Hibás válasz0/494ms8500 KiB
13Elfogadva4/4104ms7584 KiB
14Elfogadva3/38ms820 KiB
15Elfogadva3/390ms8108 KiB
16Hibás válasz0/390ms8636 KiB
17Elfogadva3/3109ms7220 KiB
18Elfogadva4/472ms6708 KiB
19Elfogadva4/482ms6964 KiB
20Elfogadva4/498ms10968 KiB