22 lines
621 B
Python
22 lines
621 B
Python
class Solution:
|
|
def letterCombinations(self, digits: str) -> List[str]:
|
|
if len(digits) == 0:
|
|
return []
|
|
|
|
options = {
|
|
'2': ('a', 'b', 'c'),
|
|
'3': ('d', 'e', 'f'),
|
|
'4': ('g', 'h', 'i'),
|
|
'5': ('j', 'k', 'l'),
|
|
'6': ('m', 'n', 'o'),
|
|
'7': ('p', 'q', 'r', 's'),
|
|
'8': ('t', 'u', 'v'),
|
|
'9': ('w', 'x', 'y', 'z')
|
|
}
|
|
|
|
pools = (options[digit] for digit in digits)
|
|
result = [""]
|
|
for pool in pools:
|
|
result = [x+y for x in result for y in pool]
|
|
return result
|