216382026-01-13 17:36:04algoproLegtávolabbi leszármazottcpp17Accepted 50/5097ms8756 KiB
// UUID: 62ed2c3a-271b-481c-976c-8d354f102e15
#include <bits/stdc++.h>
using namespace std;


vector<vector<int>> v;
int maxD = -1, ans;

void dfs(int u, int d){
	if(d>maxD){
		maxD = d;
		ans = u;
	}
	for(int x:v[u]){
		dfs(x, d+1);
	}
}




int main() {
	//cout << "Hello world!\n";
	int n;
	cin>>n;
	v.resize(n+1);
	vector<int> sz(n+1,0);

	for(int i = 0;i<n-1;i++){
		int a,b;
		cin>>a>>b;
		v[a].push_back(b);
		sz[b]++;
	}
	bool t = false;
	int gyok = -1, ly = 1;
	while(ly<=n && !t){
		if(sz[ly] == 0){
			gyok = ly;
			t = true;
		}
		ly++;
	}

	ans=gyok;
	dfs(gyok,0);
	cout<<ans;

}
SubtaskSumTestVerdictTimeMemory
base50/50
1Accepted0/01ms508 KiB
2Accepted0/079ms4272 KiB
3Accepted1/11ms316 KiB
4Accepted3/31ms500 KiB
5Accepted3/31ms316 KiB
6Accepted1/11ms316 KiB
7Accepted1/11ms316 KiB
8Accepted1/11ms316 KiB
9Accepted2/286ms4712 KiB
10Accepted3/382ms4672 KiB
11Accepted3/31ms316 KiB
12Accepted4/486ms6660 KiB
13Accepted4/493ms6452 KiB
14Accepted3/38ms820 KiB
15Accepted3/393ms6436 KiB
16Accepted3/376ms6684 KiB
17Accepted3/383ms6428 KiB
18Accepted4/465ms4660 KiB
19Accepted4/474ms5940 KiB
20Accepted4/497ms8756 KiB