Copiado al portapapeles
Descripción
Tu hermanita esta aprendiendo a hablar y te das cuenta de que existen algunas palabras que son muy difíciles para que ella las aprenda, al saber que tu hermanita sabe como pronunciar n palabras se te ocurre una idea: que tal si escojo algunas palabras de mi libro favorito que estén formadas por la concatenación de 2 de las palabras que mi hermanita sabe? así ella sabra como pronunciar la nueva palabra :), tu idea es genial pero tediosa porque tienes que analizar todas las palabras de tu libro favorito así que decidiste hacer un programa que te ayude a encontrar estas palabras, una vez que obtienes una palabra que tu hermanita puede pronunciar se la haces conocer inmediatamente y ella la aprende en ese instante pero debido a que ella es muy pequeña y tiene muy poca memoria solo puede anadir la nueva palabra que aprendió a partir de otras 2 palabras a la lista de palabras que ya sabe pronunciar si la longitud de la palabra es ≤ 102
Entrada
Un número n, 0 < n ≤ 104 indicando la cantidad de palabras que tu hermanita sabe pronunciar, n lineas siguen cada una con una palabra p que tendrá como máximo 102 letras (solo se consideran letras minúsculas)
Sigue un número q, 0 < q ≤ 5 * 104 indicando la cantidad de palabras que están en tu libro, siguen q lineas, cada linea tendrá una palabra newWord que es la palabra que tienes que analizar y decidir si tu hermanita la puede pronunciar, 2 ≤ longitud(newWord) ≤ 102 (solo se consideran letras minúsculas)
Salida
Imprime por cada newWord la cadena SI si es que tu hermanita puede pronunciar la nueva palabra a partir de la concatenacion de otras 2 palabras o NO si es imposible que tu hermanita pueda pronunciar la nueva palabra.