El otro día estábamos escribiendo oraciones con mi hija con una carta de imán de nevera. Si bien pudimos hacer algunas ( I love cat), no teníamos suficientes letras para hacer las otras ( I love you too) debido a una cantidad insuficiente de letras o(4)
Luego descubrí que si bien un juego incluía 3 eletras, solo tenía 2 oletras. Probablemente inspirado por http://en.wikipedia.org/wiki/Letter_frequency esto todavía no reflejaría la situación real "en la nevera".
Problema
Dado el archivo de texto donde cada línea contiene una "oración de muestra" que uno quisiera escribir en el refrigerador, proponga un conjunto de alfabeto con una cantidad mínima de letras pero aún suficiente para escribir cada oración individualmente.
Nota: ignore los casos, todas las letras magnéticas son mayúsculas de todos modos.
Entrada
El archivo contiene oraciones separadas por nueva línea:
hello
i love cat
i love dog
i love mommy
mommy loves daddy
Salida
Proporcione una lista ordenada de letras, donde cada letra aparece tantas veces como sea suficiente para escribir cualquier oración:
acdddeghillmmmoostvyy
(gracias, isaacg!)
Ganador
Implementación más corta (código)
ACTUALIZADO: Pruebas
He creado una prueba adicional y probé con varias respuestas aquí:
Mpor un W, o uno de lado Npor un Z? ;-)
Is.
_\¯
ven la salida;)