Data una stringa e una matrice come input, il tuo compito è quello di produrre il testo che l'input String stamperà quando digitato su un tipico tastierino mobile. In una tastiera mobile, una lettera viene digitata premendo un pulsante n volte, dove n è la posizione in cui si trova la lettera sull'etichetta del pulsante. Quindi, 22
dovrebbe uscita b
.
Regole
La matrice dell'helper conterrà la mappa dei caratteri (
[" ",".,!","abc","def","ghi","jkl","mno","pqrs","tuv","wxyz"]
). Questo verrà fornito per risparmiare alcuni byte.Il
#
simbolo commuta il caso. Il caso iniziale sarà inferiore. Quindi2#3
dovrebbe uscitaaD
.Il
0
aggiungerà uno spazio. Quindi,202
dovrebbe uscitaa a
.Ci sarà uno spazio (
) nella stringa di input per iniziare una nuova lettera che si trova sullo stesso pulsante numerico. Per esempio digitare
aa
, l'input String sarà2 2
.È garantito che la stringa di input sarà sempre un codice KeyPad valido.
Ingresso
Puoi ricevere input in qualunque modo la tua lingua supporti.
Produzione
È possibile produrre il risultato nel modo desiderato. Funzione return
è anche consentito.
Casi test
#4440555#666888330#999#66688111 -> "I Love You!"
#6#33777 7779990#222#4477744477778627777111 -> "Merry Christmas!"
#44#27 79990#66#3390#999#332777111 -> "Happy New Year!"
Questo è code-golf , quindi vince il codice più corto in byte!
year
dell'ultimo test case sia sbagliata.
##
necessario gestire il doppio spazio?