Aleatoriamente inspirados por números aumentam enquanto letras diminuem
Dada uma lista de letras mistas e números inteiros (por exemplo, ['a', 2, 3, 'b']
) aumente as letras em uma posição no alfabeto (envolvendo em z
a a
) e diminua os números em 1. No exemplo acima, a saída deve ser ['b', 1, 2, 'c']
.
- A entrada pode ser uma lista de tipos mistos, uma string delimitada, uma lista de strings, etc.
z
envolvea
, mas1
vai para0
e0
vai para-1
etc.- A entrada será sempre
[a-z]
e inteiros. Você pode escolher letras maiúsculas[A-Z]
como entrada, se for mais fácil para você. - A entrada é garantida não vazia.
- A entrada pode conter apenas números ou apenas letras.
Exemplos:
Input
Output
['a', 2, 3, 'b']
['b', 1, 2, 'c']
['a', 'b', 'z']
['b', 'c', 'a']
[-1, 0, 257, 'x']
[-2, -1, 256, 'y']
[0, 3, 1, 20382876]
[-1, 2, 0, 20382875]
Regras e esclarecimentos
- A entrada e a saída podem ser fornecidas por qualquer método conveniente .
- Você pode imprimir o resultado em STDOUT ou retorná-lo como resultado da função.
- A saída não precisa ter o mesmo formato que a entrada (por exemplo, você pode usar a entrada como uma string e a saída como uma lista).
- Um programa completo ou uma função são aceitáveis.
- Se aplicável, você pode assumir que os números inteiros de entrada / saída se encaixam no
int
intervalo nativo do seu idioma . - As brechas padrão são proibidas.
- Isso é código-golfe, portanto todas as regras usuais de golfe se aplicam e o código mais curto (em bytes) vence.
int
intervalo nativo do seu idioma , para que você nunca receba Integer.MinValue
como entrada.