https://leetcode.com/problems/letter-combinations-of-a-phone-number/
Given a string containing digits from 2-9 inclusive, return all possible letter combinations that the number could represent. Return the answer in any order.
A mapping of digit to letters (just like on the telephone buttons) is given below. Note that 1 does not map to any letters.
Example 1:
Input: digits = "23"
Output: ["ad","ae","af","bd","be","bf","cd","ce","cf"]
Example 2:
Input: digits = ""
Output: []
Example 3:
Input: digits = "2"
Output: ["a","b","c"]
Constraints:
- 0 <= digits.length <= 4
- digits[i] is a digit in the range ['2', '9'].
digits의 최대 길이가 4이므로, 단순하게 for문을 이용하여 모든 경우를 다 구해도 된다.
class Solution(object):
def letterCombinations(self, digits):
letter = {
'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"]}
result = []
for digit in digits:
if not result:
result = letter[digit]
else:
tmp = []
for r in result:
for l in letter[digit]:
tmp.append(r+l)
result = tmp
return result
'일하는 > Algorithm, Coding' 카테고리의 다른 글
[LeetCode][릿코드][Python][#48] Rotate Image (0) | 2021.11.16 |
---|---|
[LeetCode][릿코드][Python][#122] Best Time to Buy and Sell Stock II (0) | 2021.11.15 |
[LeetCode][릿코드][Python][#78] Subsets (0) | 2021.11.15 |
[LeetCode][릿코드][Python][#46] Permutations (0) | 2021.11.15 |
[BAE/<JOON>][백준][#1018] 체스판 다시 칠하기 (0) | 2020.09.23 |