Introdução
Vamos observar a seguinte string:
AABBCCDDEFFGG
Você pode ver que todas as letras foram duplicadas , exceto a letra E. Isso significa que a carta Efoi duplicada . Portanto, a única coisa que precisamos fazer aqui é reverter esse processo, o que nos fornece a seguinte string não-duplicada :
AABBCCDDEEFFGG
Vamos dar um exemplo mais difícil:
AAAABBBCCCCDD
Você pode ver que há um número desigual de consecutivos B, o que significa que um dos BBfoi desduplicado da string original. Precisamos apenas de-duplicar esta carta, o que nos dá:
AAAABBBBCCCCDD
O desafio
Dada uma sequência desduplicada não vazia , consistindo apenas em caracteres alfabéticos (somente em maiúsculas ou apenas minúsculas), retorne a sequência não desduplicada . Você pode assumir que sempre haverá pelo menos um caractere deduplicado na string.
Casos de teste
AAABBBCCCCDDDD --> AAAABBBBCCCCDDDD
HEY --> HHEEYY
AAAAAAA --> AAAAAAAA
N --> NN
OOQQO --> OOQQOO
ABBB --> AABBBB
ABBA --> AABBAA
Isso é código-golfe , então o menor envio válido em bytes vence!
ABBBmapear para AABBBB, não AABBBBBB?
A BB B. Os caracteres que não estão emparelhados (e, portanto, não estão duplicados) precisam ser duplicados, resultando em AA BB BB, que é a sequência não desduplicada.
AABBBB.