Los Caminos del Bosque Cantante
En el Reino de Lúmina existe una antigua red de senderos que conecta \(n\) claros del Bosque Cantante. La red no contiene ciclos, por lo que forma un árbol. Cada sendero conecta dos claros \(u\) y \(v\) y tiene longitud \(1\).
Se te dan dos claros especiales:
- \(S\): punto de inicio
- \(T\): punto objetivo
Tu tarea es determinar:
- La distancia mínima entre \(S\) y \(T\).
- El camino único entre ellos (en un árbol solo existe uno).
Input
La primera línea contiene tres enteros \(n\), \(S\) y \(T\) (\(2 \le n \le 2 \cdot 10^5\); \(1 \le S, T \le n\)).
Las siguientes \(n - 1\) líneas contienen dos enteros \(u_i\) y \(v_i\) (\(1 \le u_i, vi \le n\)), indicando un sendero bidireccional entre \(u_i\) y \(v_i\).
Se garantiza que los \(n - 1\) senderos forman un árbol.
Output
Imprime:
d
v1 v2 v3 ... vk
donde:
des la distancia mínima (\(k - 1 = d\))v1= \(S\) yvk= \(T\)v1 … vkes el camino único entre los nodos Dado que el grafo es un árbol, la respuesta siempre existe.
Ejemplos
Entrada
8 3 7
1 2
2 3
3 4
2 5
5 6
6 7
4 8
Salida
4
3 2 5 6 7
Entrada
10 9 8
2 3
4 5
9 10
5 6
8 9
1 2
7 8
6 7
3 4
Salida
1
9 8
Comments