Árboles de altura mínima

Tiempo límite 2 s
Memoria límite 256 MB
Casos de prueba 13
Dificultad Medio Algoritmos
Mostrar (3) BFSGrafosOrden topológico
Enviar solución

Puntos: 10

Tipos de problema
Lenguajes permitidos
C, C++, Java, Python, Rust

Tienes un árbol (un grafo conexo y sin ciclos) de \(n\) nodos numerados de \(0\) a \(n-1\). Si eliges un nodo como raíz, la altura del árbol es la mayor distancia (en aristas) desde la raíz hasta otro nodo. Encuentra todos los nodos que, elegidos como raíz, dan la menor altura posible.

Entrada

La primera línea tiene \(n\) \((1 \le n \le 2 \cdot 10^4)\) y siguen \(n - 1\) líneas con las aristas \(a\) \(b\) \((0 \le a, b < n)\).

Salida

Una línea con los nodos pedidos, en orden creciente.

Ejemplo 1

Entrada

4
1 0
1 2
1 3

Salida

1

Ejemplo 2

Entrada

6
3 0
3 1
3 2
3 4
5 4

Salida

3 4

Ejemplo 3

Entrada

1

Salida

0

Basado en el problema 310 de LeetCode, Minimum Height Trees, adaptado a entrada y salida estándar; enunciado redactado para este juez. Es parte de la lista Grind 75 de Yangshun Tay.


Comentarios

No hay comentarios por el momento.