Árbol favorito

Tiempo límite 0,1 s Java: 0,333 s
Memoria límite 1 GB
Casos de prueba 139
Enviar solución

Puntos: 1

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

Dados dos árboles \(T_1\) y \(T_2\), determina si algún subárbol de \(T_1\) (un subconjunto conexo de sus vértices con las aristas entre ellos) es isomorfo a \(T_2\). Dos árboles son isomorfos si se pueden renombrar los vértices de uno para obtener exactamente el otro.

Entrada

Primero se describe \(T_1\) y luego \(T_2\). Cada árbol empieza con una línea con su cantidad de vértices \(N\) \((1 \le N \le 100)\), seguida de \(N - 1\) líneas con dos enteros \(U\) y \(V\) \((1 \le U, V \le N,\ U \ne V)\): una arista.

Salida

Una línea con Y si algún subárbol de \(T_1\) es isomorfo a \(T_2\), o N si no.

Notas

En el primer ejemplo, el subárbol de \(T_1\) formado por todos los vértices salvo el \(5\) es isomorfo a \(T_2\).

Ejemplo 1

Entrada

5
1 3
4 5
3 2
3 4
4
2 4
2 1
3 2

Salida

Y

Ejemplo 2

Entrada

4
2 3
2 1
2 4
4
1 2
2 3
3 4

Salida

N

Ejemplo 3

Entrada

1
1

Salida

Y

Regional Latinoamericana 2022 del ICPC, problema F («Favorite Tree»). Versión en español redactada para este juez; el enunciado oficial, en inglés, está aquí abajo.

Enunciado oficial en inglés (PDF)

Tu navegador no muestra el PDF aquí. Ábrelo en otra pestaña.

Abrir el enunciado oficial en otra pestaña


Comentarios

No hay comentarios por el momento.