216722026-01-13 18:00:36algoproLegtávolabbi leszármazottcpp17Wrong answer 39/50114ms10804 KiB
// UUID: 21488a4f-244d-40a9-af3d-17c047c151ca
#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);
    if (n==1){
        return 0;
    }
    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;

}
SubtaskSumTestVerdictTimeMemory
base39/50
1Accepted0/01ms316 KiB
2Accepted0/082ms5424 KiB
3Accepted1/11ms316 KiB
4Accepted3/31ms316 KiB
5Wrong answer0/31ms316 KiB
6Accepted1/11ms316 KiB
7Accepted1/11ms380 KiB
8Wrong answer0/11ms316 KiB
9Accepted2/286ms5992 KiB
10Accepted3/389ms5912 KiB
11Accepted3/31ms428 KiB
12Wrong answer0/4104ms8496 KiB
13Accepted4/493ms7732 KiB
14Accepted3/38ms824 KiB
15Accepted3/398ms8204 KiB
16Wrong answer0/393ms8756 KiB
17Accepted3/3114ms7220 KiB
18Accepted4/468ms6772 KiB
19Accepted4/492ms6964 KiB
20Accepted4/497ms10804 KiB