216822026-01-13 18:05:05algoproLegtávolabbi leszármazottcpp17Elfogadva 50/5086ms5904 KiB
// UUID: c2075447-1f98-41d4-a024-d4468d4dd88c
#include <bits/stdc++.h>
using namespace std;

int main() {
	int n; cin >> n;

	vector<vector<int>> children(n+1);
	vector<int> parent(n+1);

	for (int i = 0; i < n-1; i++) {
		int a,b; cin >> a >> b;
		children[a].push_back(b);
		parent[b] = a;
	}

	int gyoker = 1;

	for (int i = 1; i <= n; i++) {
		if (parent[i] == 0) {
			gyoker = i;
			break; 
		}
	}

	queue<pair<int, int>> q;
	q.push({gyoker, 0});
	int legmeszebb = gyoker;
    int max_melyseg = 0;

    while (!q.empty()) {
        auto [u, d] = q.front();
        q.pop();


        if (d > max_melyseg) {
            max_melyseg = d;
            legmeszebb = u;
        }

        for (int v : children[u]) {
            q.push({v, d + 1});
        }
    }

	cout << legmeszebb;



}
RészfeladatÖsszpontTesztVerdiktIdőMemória
base50/50
1Elfogadva0/02ms316 KiB
2Elfogadva0/075ms4292 KiB
3Elfogadva1/11ms508 KiB
4Elfogadva3/31ms500 KiB
5Elfogadva3/31ms316 KiB
6Elfogadva1/11ms316 KiB
7Elfogadva1/11ms316 KiB
8Elfogadva1/12ms316 KiB
9Elfogadva2/279ms4756 KiB
10Elfogadva3/381ms4696 KiB
11Elfogadva3/31ms316 KiB
12Elfogadva4/483ms5100 KiB
13Elfogadva4/486ms5152 KiB
14Elfogadva3/38ms820 KiB
15Elfogadva3/386ms5132 KiB
16Elfogadva3/381ms4660 KiB
17Elfogadva3/379ms4660 KiB
18Elfogadva4/459ms3888 KiB
19Elfogadva4/474ms4404 KiB
20Elfogadva4/486ms5904 KiB