Escreva um programa ou função que duplique letras em uma palavra, para que todas as letras duplicadas organizadas da esquerda para a direita na palavra formem a matriz de entrada.
Por exemplo:
input: chameleon, [c,a,l,n]
output: cchaamelleonn
Entrada
- A palavra inicial (por exemplo
chameleon
) - Uma matriz de caracteres (
[c,a,l,n]
) ou uma sequência para representar uma matriz (caln
) ou algo semelhante - A entrada pode ser feita através de parâmetros de função, STDIN ou equivalentes de idioma
- Todas as entradas serão minúsculas (az)
Saída
A palavra mudada
Se houver várias soluções, qualquer uma pode ser impressa
input: banana [n,a] possible outputs: bannaana, banannaa |-|---------|-|--->[n,a]
Você pode assumir que a palavra de entrada (não necessariamente a matriz) terá as letras na matriz (em ordem)
Você também pode assumir que as entradas não possuem letras consecutivas iguais (NÃO maçã, geek, verde, vidro, porta ...)
Exemplos
input: abcdefghij, [a,b,c]
output: aabbccdefghij
input: lizard, [i,a,r,d]
output: liizaarrdd
input: coconut, [c,o]
ouput: ccooconut or coccoonut or ccocoonut
input: onomatopoeia, [o,o,a,o,o]
output: oonoomaatoopooeia
input: onomatopoeia, [o,a,o]
output: oonomaatoopoeia or onoomaatoopoeia or oonomaatopooeia etc.
O programa mais curto vence!
Classificação (obrigado a Martin Büttner pelo trecho)
#answer-list
e #language-list
largura 50%
para evitar a sobreposição de colunas no seu snippet.
bash
+ sed
resposta): É ilegal para banana, na
=> baannana
? Eu acreditava que "Você pode assumir que todas as entradas terão as letras na matriz (em ordem)" deve permitir , mas não exigir , respostas para processar as duas listas sequencialmente, mas o @manatwork a interpretou de maneira diferente.
[c,o,c,o]
, e não[c,o]
.