Pongamos que, después de muchos años de esfuerzo, has conseguido aprender unos pocos kanas japoneses (símbolos que representan sílabas). De aquí a aprender japonés todavía hay un largo camino, pero: ¿qué palabras podrías escribir usando únicamente los kanas que conoces?
Entrada
Cada entrada consiste en una línea con los números k y t, donde k es el número de kanas (sílabas) que conoces y t es el máximo número de sílabas de las palabras que queremos generar. A continuación, k líneas con las k sílabas, todas ellas distintas y formadas por 2 letras minúsculas.
Salida
Escribe, en orden alfabético, todas las palabras de como mucho t sílabas que podrían formarse usando únicamente los kanas conocidos.
Puntuación
Resolver varias entradas con 1≤ k≤ 4 sílabas y palabras con no más de 1≤ t≤ 2 sílabas de longitud.
Resolver varias entradas con 1≤ k≤ 2 sílabas y palabras con no más de 1≤ t≤ 4 sílabas de longitud.
Resolver varias entradas con 1≤ k,t≤ 10 donde se garantiza que la salida no contendrás más de 1000 palabras.
Resolver varias entradas con 1≤ k,t≤ 100 donde se garantiza que la salida no contendrás más de 100000 palabras.
Input
2 3 ka mo
Output
ka kaka kakaka kakamo kamo kamoka kamomo mo moka mokaka mokamo momo momoka momomo
Input
5 2 ti la ne ko tu
Output
ko koko kola kone koti kotu la lako lala lane lati latu ne neko nela nene neti netu ti tiko tila tine titi titu tu tuko tula tune tuti tutu