На клавиатуре старых мобильных телефонов каждой цифре соответствовало несколько букв. Примерно так:
2:’abc’,
3:’def’,
4:’ghi’,
5:’jkl’,
6:’mno’,
7:’pqrs’,
8:’tuv’,
9:’wxyz’
Вам известно в каком порядке были нажаты кнопки телефона, без учета повторов. Напечатайте все комбинации букв, которые можно набрать такой последовательностью нажатий.
Формат ввода
На вход подается строка, состоящая из цифр 2-9 включительно. Длина строки не превосходит 10 символов.
Формат вывода
Выведите все возможные комбинации букв через пробел.
def letterCombinations(digits):
letters = {'2':'abc', '3':'def','4':'ghi', '5':'jkl', '6':'mno', '7':'pqrs','8':'tuv', '9':'wxyz'}
def backtrack(digits, path, res):
if digits == '':
res.append(path)
return
for letter in letters[digits[0]]:
path += letter
backtrack(digits[1:], path, res)
path = path[:-1]
res = []
backtrack(digits, '', res)
for x in res:
print(x, end=' ')
vvod = (input())
letterCombinations(vvod)