반응형
Notice
Recent Posts
Recent Comments
- Today
- Total
작심삼일
[LeetCode] 216 | Combination Sum III | Python 본문
728x90
반응형
문제 링크: https://leetcode.com/problems/combination-sum-iii/
문제
Find all valid combinations of k numbers that sum up to n such that the following conditions are true:
- Only numbers 1 through 9 are used.
- Each number is used at most once.
Return a list of all possible valid combinations. The list must not contain the same combination twice, and the combinations may be returned in any order.
조건
- 2 <= k <= 9
- 1 <= n <= 60
내 풀이
itertools 라이브러리의 combinations를 사용한다.
주어진 수의 범위가 1~9이므로 combination을 사용해도 시간초과가 나지 않는다.
[1, 2, 3, 4, 5, 6, 7, 8, 9] 리스트 중 combination을 이용해 k개를 뽑고, 그 때의 합이 n인 것만 ans에 추가한다.
코드
from itertools import combinations
class Solution:
def combinationSum3(self, k: int, n: int) -> List[List[int]]:
ans = []
com = combinations([x for x in range(1, 10)], k)
for c in com:
if sum(c) == n:
ans.append(c)
return ans
728x90
반응형
'스터디 > 코테' 카테고리의 다른 글
[LeetCode] 47 | Permutations II | Python (0) | 2022.05.12 |
---|---|
[LeetCode] 1641 | Count Sorted Vowel Strings | Python (0) | 2022.05.11 |
[LeetCode] 17 | Letter Combinations of a Phone Number | Python (0) | 2022.05.09 |
[LeetCode] 1209 | Remove All Adjacent Duplicates in String II | Python (0) | 2022.05.06 |
[LeetCode] 1679 | Max Number of K-Sum Pairs | Python (0) | 2022.05.04 |
Comments