Esta pregunta solicita una funcionalidad de coincidencia de diccionario T9 que es un problema muy interesante. Pero T9 tiene otra forma de escribir y es escribir caracteres por caracteres. NO necesitaría un diccionario para implementar este teclado.
Aquí está el mapa de teclas de un teclado T9 si lo olvidó:
+-------+-------+-------+
| 1 | 2 | 3 |
| .?! | ABC | DEF |
+-------+-------+-------+
| 4 | 5 | 6 |
| GHI | JKL | MNO |
+-------+-------+-------+
| 7 | 8 | 9 |
| PQRS | TUV | WXYZ |
+-------+-------+-------+
| * | 0 | # |
| ← | SPACE | → |
+-------+-------+-------+
Cómo funciona T9
Para escribir un carácter con T9, debe presionar la tecla numérica que representa los ntiempos de ese carácter . nes el orden de ese personaje escrito en esa tecla. Los números son el último carácter que puede escribir para cada tecla. Por ejemplo, para escribir Bpresiono 2dos veces, o para escribir 5presiono 5cuatro veces. Para terminar de escribir este personaje, presiono #. *es simplemente retroceso. En nuestra versión de teclado no hay mayúsculas.
Ejemplos de entrada y salida:
8#99999#055#33#999#22#666#2#777#3# → T9 KEYBOARD
Explicación:
8seleccionaTy#pasa al siguiente personaje99999selecciona el último carácter de la9clave que es9y#pasa al siguiente personaje0inserta un espacio33selecciona el segundo carácter de la3clave que esKy se#mueve al siguiente carácter- Y así...
Reglas
Su función o programa debe aceptar una cadena que represente las pulsaciones de teclas T9. La salida es el texto resultante de esas pulsaciones de teclas, como se describe anteriormente.
Este es un código básico de golf, por lo que el ganador es el más corto en bytes, y se aplican reglas / lagunas estándar.
T9 KEYBOARDes completamente incorrecto. Eso se leeT9 JEYBARD
#si los botones consecutivos son diferentes de todos modos. Dicho esto: sin ese bono, ¿qué pasaría si #se omite?