fundo
Você recebeu a tarefa de fazer anotações para uma reunião. Você começa a digitar no Google Doc, mas não tem tempo suficiente durante a reunião para olhar o teclado enquanto digita.
Felizmente para você, você pode digitar sem olhar para o teclado. Após a reunião, você percebe que tudo o que digitou foi uma chave à esquerda.
O desafio
Para esse desafio, você usará as letras, números e barra de espaço do layout do teclado QWERTY.
Dada a entrada de texto (de qualquer método de entrada padrão), imprima o texto resultante, onde cada caractere é movido um para a esquerda no teclado.
Para a maioria das letras, basta olhar para a letra e traduzi-la para a letra à esquerda (
c
torna-sex
,t
torna-ser
, etc.).Para letra
q
, traduza para um caractere de tabulação literal (\t
).Para letra
a
, ative caps lock, para que a capitalização do restante da string seja invertida.Para letra
z
, coloque a próxima letra em maiúscula.Nenhuma tradução é necessária para a barra de espaço.
Preserve a capitalização durante a tradução e lembre-se do caps lock (se o caps lock estiver ativado, verifique se o caso é o oposto).
Todos os caracteres na sequência de entrada serão letras, números ou um espaço. Nenhuma pontuação ou outros caracteres podem ser incluídos.
Casos de teste
\t
é um caractere de tabulação literal
Hello world -> Gwkki qieks
Code Golf -> Xisw Fikd
Queried apples -> \tyweuws OOKWA
Pontuação
A menor pontuação em bytes vence. Diverta-se!
Azerty
->wERT
z
, coloque em maiúscula a próxima letra na sequência -> isso significa que precisamos apenas nos preocupar com letras maiúsculas e não ter que alternar entre dígitos e símbolos? Qual é a saída esperada para 0123456789
, a0123456789
e z0z1z2z3z4z5z6z7z8z9
? (Além disso, em muitos teclados não-QWERTY, 'Caps Lock' realmente funciona como um 'Shift Lock'. Acredito que o QWERTY não siga esse padrão, mas deve ser especificado para aqueles que não estão familiarizados com ele. )