Entrada
Uma sequência aleatória não vazia que consiste em caracteres ASCII no intervalo .
Saída
A saída é obtida aplicando rotações sucessivas na sequência de entrada.
Para cada letra ( [a-zA-Z]
) na sequência de entrada, da esquerda para a direita:
- se a letra estiver em maiúscula, gire todos os caracteres à sua frente em uma posição à esquerda
- se a letra estiver em minúscula, gire todos os caracteres à sua frente em uma posição para a direita
Exemplo
Entrada: "Cb-Ad"
- A primeira letra é um " C ". Deveríamos fazer uma rotação para a esquerda, mas não há caracteres antes deste " C ". Portanto, não há nada para girar.
- A próxima letra é um " b ". Nós giramos " C " para a direita. Por ser um único personagem, ele permanece inalterado.
- O caractere " - " não aciona nenhuma rotação, pois não é uma letra.
- A próxima letra é um " A ". Giramos " Cb- " para a esquerda, o que indica " bC Ad"
- A quarta e última letra é um " d ". Giramos " b-CA " para a direita, o que indica " Ab-C d"
Portanto, a saída esperada é " Ab-Cd ".
Regras
- Você pode receber a entrada como uma string ou como uma matriz de caracteres - que podem ou não ser a mesma coisa, dependendo do seu idioma.
- Você também pode gerar uma matriz de caracteres em vez de uma string.
- Este é
ogl-edocfcode-golf
Casos de teste
"cbad" -> "abcd"
"ACBD" -> "ABCD"
"Cb-Ad" -> "Ab-Cd"
"caeBDF" -> "aBcDeF"
"aEcbDF" -> "abcDEF"
"ogl-edocf" -> "code-golf"
"W o,ollelrHd!" -> "Hello, World!"
"ti HIs SSta ET!" -> "tHis IS a tEST!"
.U
para reduzir a entrada do 2º valor. Isso permite que você saia=k
do início e)k
do final, pois a entrada e a impressão estão implícitas. Programa completo:.U+.>b-}ZG}Zr1GZ
- link