239602026-02-02 17:38:52algoproLegtávolabbi leszármazottcpp17Elfogadva 50/5096ms9172 KiB
// UUID: af16d464-13eb-4c60-9f8c-e6c739450bb9
#include <bits/stdc++.h>
using namespace std;

vector<vector<int>>gyerek;
vector<int>tavolsagok;
vector<int>szulo;
int os;
void melysegi(int csucs){
	if(csucs != os){
		tavolsagok[csucs] = tavolsagok[szulo[csucs]]+1;
	} else{
		tavolsagok[csucs] = 0;
	}
	for(int i : gyerek[csucs]){
		melysegi(i);
	}
}

int main() {
	int n;
	cin >> n;
	gyerek.resize(n+1);
	szulo.resize(n+1);
	for(int i = 0; i < n-1; i++){
		int apa, fia;
		cin >> apa >> fia;
		gyerek[apa].push_back(fia);
		szulo[fia] = apa;
	}
	for(int i = 1; i < n+1; i++){
		if(szulo[i] == 0){
			os = i;
		}
	}
	tavolsagok.resize(n+1);
	melysegi(os);
	int maxtav = 0;
	int kiirni = 0;
	for(int i = 1; i <= n; i++){
		if(tavolsagok[i] > maxtav){
			maxtav = tavolsagok[i];
			kiirni = i;
		}
	}
	cout << kiirni;
}
RészfeladatÖsszpontTesztVerdiktIdőMemória
base50/50
1Elfogadva0/01ms316 KiB
2Elfogadva0/081ms5424 KiB
3Elfogadva1/11ms316 KiB
4Elfogadva3/31ms316 KiB
5Elfogadva3/31ms316 KiB
6Elfogadva1/11ms316 KiB
7Elfogadva1/11ms316 KiB
8Elfogadva1/12ms508 KiB
9Elfogadva2/282ms5148 KiB
10Elfogadva3/382ms5096 KiB
11Elfogadva3/31ms316 KiB
12Elfogadva4/492ms6964 KiB
13Elfogadva4/496ms7988 KiB
14Elfogadva3/38ms820 KiB
15Elfogadva3/382ms6776 KiB
16Elfogadva3/379ms6888 KiB
17Elfogadva3/394ms6708 KiB
18Elfogadva4/463ms4916 KiB
19Elfogadva4/479ms6320 KiB
20Elfogadva4/493ms9172 KiB