Ingresso
Una stringa mescolata non vuota composta da caratteri ASCII nell'intervallo .
Produzione
L'output si ottiene applicando rotazioni successive alla stringa di input.
Per ogni lettera ( [a-zA-Z]
) nella stringa di input, da sinistra a destra:
- se la lettera è in maiuscolo, ruota tutti i caratteri prima di essa di una posizione a sinistra
- se la lettera è in minuscolo, ruota tutti i caratteri prima di una posizione verso destra
Esempio
Input: "Annuncio Cb"
- La prima lettera è una " C ". Dovremmo fare una rotazione a sinistra, ma non c'è carattere prima di questa " C ". Quindi, non c'è nulla da ruotare.
- La lettera successiva è una " b ". Ruotiamo " C " verso destra. Poiché è un singolo personaggio, rimane invariato.
- Il carattere " - " non attiva alcuna rotazione, in quanto non è una lettera.
- La lettera successiva è una " A ". Ruotiamo " Cb- " a sinistra, che fornisce " Annuncio bC "
- La quarta e ultima lettera è una " d ". Ruotiamo " b-CA " verso destra, che dà " Ab-C d"
Pertanto, l'output previsto è " Ab-Cd ".
Regole
- Puoi prendere l'input come stringa o come matrice di caratteri, che può essere o meno la stessa cosa, a seconda della tua lingua.
- È inoltre possibile generare una matrice di caratteri anziché una stringa.
- Questo è
ogl-edocfcode-golf
Casi test
"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
per ridurre l'ingresso dal 2o valore. Ciò consente di abbandonare=k
dall'inizio e)k
dalla fine poiché sia l'input che la stampa sono impliciti. Programma completo:.U+.>b-}ZG}Zr1GZ
- link