Introducción
Un acrónimo recursivo es un acrónimo que contiene o se refiere a sí mismo, por ejemplo:
Fishpodría ser un acrónimo recursivo para Fish is shiny hero, observe cómo también contiene el acrónimo. Otro ejemplo es Hi-> Hi igloo. O incluso ppcg paints->ppcg paints cool galaxies pouring acid into night time stars
Básicamente, una oración es un acrónimo recursivo si las primeras letras de cada una de las palabras deletrean la primera palabra o palabras.
Desafío
Cree un programa que tome una cadena de 1 o más palabras separadas por un carácter de espacio y genere un acrónimo recursivo o una cadena vacía si es imposible. Es imposible hacer un acrónimo recursivo para una cadena como, por ejemplo, ppcg elephantporque comenzaría tomando el pde ppcgluego agregando eso al acrónimo, luego tomando el ede elephant. Pero ahora tenemos una contradicción, ya que el acrónimo actualmente deletrea "pe ..", que entra en conflicto con "pp ..". Ese es también el caso con, por ejemplo hi,. Tomarías el hde hi, pero la oración ha terminado y no hay más letras para deletrear hiy solo nos queda hlo que no coincidehi. (La cadena necesita una cantidad de palabras mayor o igual que la cantidad de letras en el acrónimo)
La entrada y la salida no distinguen entre mayúsculas y minúsculas
Restricciones
- Todo lo que ingrese en su programa será palabras válidas en inglés. Pero también debe asegurarse de escribir palabras en inglés válidas (puede usar una base de datos o simplemente almacenar una palabra para cada una de las 26 letras)
- Se aplican las lagunas estándar y las reglas de E / S predeterminadas
Casos de prueba
hi igloo -> hi
ppcg paints -> (impossible)
ppcg paints cool giraffes -> ppcg
ppcg paints cool galaxies pouring acid into night time stars -> ppcgpaints
ppcg paints cool galaxies pouring acid into night time -> ppcg
ppcg questions professional pool challengers greatly -> (impossible)
I -> I
Puntuación
Este es el código de golf , por lo que gana el código fuente más pequeño en bytes
ppcg paints cool galaxies pouring acid into night timesería "ppcgpaint" cuando se convierte en un acrónimo, pero la salida debería ser ppcgaunque solo sea una coincidencia parcial.