introduction
Un acronyme récursif est un acronyme qui contient ou se réfère à lui-même, par exemple:
Fishpourrait être un acronyme récursif pour Fish is shiny hero, notez comment il contient également l'acronyme lui-même. Un autre exemple est Hi-> Hi igloo. Ou même ppcg paints->ppcg paints cool galaxies pouring acid into night time stars
Donc, fondamentalement, une phrase est un acronyme récursif si les premières lettres de chacun des mots épelent le ou les premiers mots.
Défi
Créez un programme qui prend une chaîne de 1 ou plusieurs mots séparés par un caractère espace et génère un acronyme récursif ou une chaîne vide si cela est impossible. Il est impossible de faire un acronyme récursif pour une chaîne comme, par exemple, ppcg elephantparce que vous commenceriez par prendre le pfrom ppcgpuis en ajoutant cela à l'acronyme, puis en prenant le efrom elephant. Mais maintenant nous avons une contradiction, puisque l'acronyme définit actuellement "pe ..", ce qui est en conflit avec "pp ..". C'est également le cas, par exemple hi,. Vous prendriez le hde hi, mais la phrase est maintenant terminée et il n'y a plus de lettres à épeler hiet il ne nous reste plus que hce qui ne correspond pashi. (La chaîne a besoin d'un nombre de mots supérieur ou égal au nombre de lettres de l'acronyme)
L'entrée et la sortie ne sont pas sensibles à la casse
Restrictions
- Tout ce qui est entré dans votre programme sera un mot anglais valide. Mais vous devez également vous assurer de générer des mots anglais valides (vous pouvez utiliser une base de données ou simplement stocker un mot pour chacune des 26 lettres)
- Les failles standard et les règles d'E / S par défaut s'appliquent
Cas de test
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
Notation
C'est le code-golf , donc le plus petit code source en octets gagne
ppcg paints cool galaxies pouring acid into night timeserait "ppcgpaint" lorsqu'il est transformé en acronyme, mais la sortie devrait être ppcgmême si ce n'est qu'une correspondance partielle?