Це питання задає функціональну відповідність словника T9, що є дуже цікавою проблемою. Але у Т9 є інший спосіб введення тексту, а це введення символів за символом. Вам НЕ потрібен словник для реалізації цієї клавіатури.
Ось ключова карта клавіатури T9, якщо ви забули:
+-------+-------+-------+
| 1 | 2 | 3 |
| .?! | ABC | DEF |
+-------+-------+-------+
| 4 | 5 | 6 |
| GHI | JKL | MNO |
+-------+-------+-------+
| 7 | 8 | 9 |
| PQRS | TUV | WXYZ |
+-------+-------+-------+
| * | 0 | # |
| ← | SPACE | → |
+-------+-------+-------+
Як працює T9
Щоб набрати символу за допомогою T9, потрібно натиснути цифрову клавішу, що відображає цей час символів n
. n
це порядок цього символу, написаний на цьому ключі. Числа - це останній символ, який ви можете ввести для кожної клавіші. Наприклад, для введення B
натискаю 2
два рази, або для введення 5
натискаю 5
чотири рази. Щоб закінчити введення цього символу, я натискаю #
. *
це просто зворотний простір. У нашій версії клавіатури відсутнє використання великих літер.
Приклади введення та виведення:
8#99999#055#33#999#22#666#2#777#3# → T9 KEYBOARD
Пояснення:
8
вибираєT
та#
переходить до наступного символу99999
виберіть останній символ9
ключа, який є,9
і#
переходить до наступного символу0
вставляє пробіл33
вибирає другий символ3
ключа, який є,K
і#
переходить до наступного символу- І так далі...
Правила
Ваша функція або програма повинні приймати рядок, що представляє T9 натискання клавіш. Вихід - це отриманий текст із цих натискань клавіш, як зазначено вище.
Це основний код гольфу, тому переможець найменший в байтах, і застосовуються стандартні правила / лазівки.
T9 KEYBOARD
є абсолютно неправильним. Що читаєтьсяT9 JEYBARD
#
якщо послідовні кнопки все одно відрізняються. що говориться: без цього бонусу, що має статися, якщо #
пропущено?