Ispirato casualmente dall'aumento dei numeri mentre le lettere diminuiscono
Dato un elenco di lettere e numeri interi misti (es ['a', 2, 3, 'b']
) aumentare le lettere di una posizione in alfabeto (avvolgimento in z
a a
) e ridurre il numero di 1. Per l'esempio precedente, l'uscita dovrebbe essere ['b', 1, 2, 'c']
.
- L'input può essere un elenco di tipo misto, una stringa delimitata, un elenco di stringhe, ecc.
z
va a finirea
, ma1
va a0
,0
va a-1
, ecc.- L'input sarà sempre
[a-z]
e solo numeri interi. Puoi scegliere le lettere maiuscole[A-Z]
come input se è più facile per te. - L'ingresso è garantito non vuoto.
- L'input può contenere solo numeri o solo lettere.
Esempi:
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]
Regole e chiarimenti
- Input e output possono essere forniti con qualsiasi metodo conveniente .
- È possibile stampare il risultato su STDOUT o restituirlo come risultato di una funzione.
- L'output non deve avere lo stesso formato dell'input (ad esempio, è possibile prendere input come stringa e output come elenco).
- È accettabile un programma completo o una funzione.
- Se applicabile, puoi supporre che gli interi di input / output si adattino all'intervallo nativo della tua lingua
int
. - Sono vietate le scappatoie standard .
- Si tratta di code-golf quindi si applicano tutte le normali regole del golf e vince il codice più breve (in byte).
int
, quindi non otterrai mai Integer.MinValue
come input.