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, 22dovrebbe 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#3dovrebbe uscitaaD.Il
0aggiungerà uno spazio. Quindi,202dovrebbe uscitaa a.Ci sarà uno spazio (
) nella stringa di input per iniziare una nuova lettera che si trova sullo stesso pulsante numerico. Per esempio digitareaa, 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!
yeardell'ultimo test case sia sbagliata.
##necessario gestire il doppio spazio?
