Dada uma sequência como entrada, imprima uma ou mais variantes da sequência, de modo que:
- Nenhum personagem está em sua posição original
- Nenhum personagem é adjacente a um personagem ao qual ele era originalmente adjacente
Você pode supor que isso sempre seja possível para a sequência especificada e conterá apenas caracteres alfabéticos em maiúsculas e minúsculas ( [a-z]
ou [A-Z]
se você preferir)
Observe que duplicatas do mesmo caractere não são consideradas únicas.
Por exemplo, dada a entrada programming
, a saída não pode conter um m
no 7º ou 8º caractere e não pode conter um g
no 4º ou 11º caractere (1 indexado)
Exemplo:
Pegue a corda abcdef
O seguinte seria uma saída válida: daecfb
No entanto, o seguinte seria inválido: fdbcae
como neste exemplo c
e b
ainda é adjacente.
Adjacência também envolve, o que significa que você não pode fazer fdbeca
como f
e a
ainda é adjacente.
Casos de teste:
Observe que essas não são as únicas saídas válidas para as entradas fornecidas
Escrito como input -> output
:
helowi -> ioewhl
mayube -> euabmy
stephens -> nhseespt
aabcdeffghij -> dbfhjfigaeca
Pontuação:
Isso é código-golfe, e o menor número de bytes em cada idioma vence!
No character is adjacent to a character that it was originally adjacent to
. A ordem não importa para adjacência? Portanto, a entrada "abcd" não pode ter "ab" em lugar nenhum e também não pode ter "ba" em lugar algum?