Descifrado de desplazamiento cíclico de una cadena
Swift
Hard
strings
Tarea «Descifrado de desplazamiento cíclico de una cadena»
Se da una cadena cifrada S, que consta de letras latinas minúsculas. Se obtiene de la cadena original T mediante un desplazamiento cíclico a la derecha en algún número de posiciones k (0 ≤ k < |T|) y la posterior sustitución de cada carácter por el siguiente en el alfabeto (con transición cíclica: 'z' → 'a'). Es necesario encontrar la cadena original T de longitud mínima, tal que después de la transformación descrita se obtenga S. Si hay varias T, elegir la lexicográficamente mínima. La longitud de S es de 1 a 1000. Se garantiza que existe una solución.
Formato de entrada
Una cadena S (letras latinas minúsculas, longitud de 1 a 1000).
Formato de salida
Una cadena — la cadena original T de longitud mínima (y lexicográficamente mínima entre dichas cadenas).
Ejemplos
Ejemplo 1
ENTRADA
za
SALIDA
yz
Ejemplo 2
ENTRADA
aaa
SALIDA
z
Ejemplo 3
ENTRADA
5
3
0
SALIDA
None
main.swift