Introdução
Um acrônimo recursivo é um acrônimo que contém ou se refere a si mesmo, por exemplo:
Fishpoderia ser um acrônimo recursivo para Fish is shiny hero, observe como isso também contém o próprio acrônimo. Outro exemplo é Hi-> Hi igloo. Ou até ppcg paints->ppcg paints cool galaxies pouring acid into night time stars
Então, basicamente, uma frase é um acrônimo recursivo se as primeiras letras de cada uma das palavras soletrarem a primeira palavra ou palavras.
Desafio
Crie um programa que use uma sequência de 1 ou mais palavras separadas por um caractere de espaço e produza um acrônimo recursivo ou uma sequência vazia, se for impossível. É impossível criar um acrônimo recursivo para uma sequência como, por exemplo, ppcg elephantporque você começaria com o pfrom ppcge o adicionaria ao acrônimo, depois com o efrom elephant. Mas agora temos uma contradição, já que atualmente o acrônimo indica "pe ..", que entra em conflito com "pp ..". Esse também é o caso, por exemplo hi. Você pegaria o hfrom hi, mas a frase agora acabou e não há mais letras para soletrar hie ficamos apenas com o hque não correspondehi. (A sequência precisa de uma quantidade de palavras maior ou igual à quantidade de letras na sigla)
Entrada e saída não diferenciam maiúsculas de minúsculas
Restrições
- Qualquer coisa inserida no seu programa será válida em inglês. Mas você também deve fornecer palavras em inglês válidas (você pode usar um banco de dados ou apenas armazenar uma palavra para cada uma das 26 letras)
- Aplicam-se brechas padrão e regras de E / S padrão
Casos de teste
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
Pontuação
Isso é código-golfe , então o menor código-fonte em bytes vence
ppcg paints cool galaxies pouring acid into night timeseria "ppcgpaint" quando convertido em um acrônimo, mas a saída deve ser ppcgmesmo que seja apenas uma correspondência parcial?