Los Caminos del Bosque Cantante


Submit solution

Points: 100
Time limit: 0.5s
Memory limit: 256M

Authors:
Problem type

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:

  • d es la distancia mínima (\(k - 1 = d\))
  • v1 = \(S\) y vk = \(T\)
  • v1 … vk es 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

There are no comments at the moment.