216242026-01-13 17:23:59algoproLegtávolabbi leszármazottcpp17Accepted 50/50101ms8416 KiB
// UUID: ff0f0b91-5a47-45b6-817b-97654fe4917d
#include <bits/stdc++.h>
using namespace std;

vector<vector<int>> gyerekek;
int maxmely = 0;
int menode = 0;

void dfs(int node, int mely) {
	if (mely > maxmely) {
		maxmely = mely;
		menode = node;
	}

	for (int gyerek : gyerekek[node]) dfs(gyerek, mely + 1);
}

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

	gyerekek.resize(n + 1);
	vector<bool> vansz(n + 1, false);

	for (int i = 0; i < n - 1; i++) {
		int szulo, gyerek;
		cin >> szulo >> gyerek;
		gyerekek[szulo].push_back(gyerek);
		vansz[gyerek] = true;
	}

	int gyok = -1;
	for (int i = 1; i <= n; i++) {
		if (!vansz[i]) {
			gyok = i;
			break;
		}
	}

	dfs(gyok, 0);

	cout << menode;
}
SubtaskSumTestVerdictTimeMemory
base50/50
1Accepted0/01ms316 KiB
2Accepted0/078ms3752 KiB
3Accepted1/11ms316 KiB
4Accepted3/31ms316 KiB
5Accepted3/31ms316 KiB
6Accepted1/11ms316 KiB
7Accepted1/11ms316 KiB
8Accepted1/12ms316 KiB
9Accepted2/286ms4144 KiB
10Accepted3/383ms4292 KiB
11Accepted3/31ms316 KiB
12Accepted4/492ms6280 KiB
13Accepted4/496ms6200 KiB
14Accepted3/38ms564 KiB
15Accepted3/390ms6188 KiB
16Accepted3/389ms6196 KiB
17Accepted3/390ms5860 KiB
18Accepted4/468ms4528 KiB
19Accepted4/481ms5684 KiB
20Accepted4/4101ms8416 KiB