반응형
이 포스팅은 파이썬 알고리즘 인터뷰를 공부하면서 정리한 내용입니다.
출처 : 파이썬 알고리즘 인터뷰
코드 출처 : 파이썬 알고리즘 인터뷰 깃허브
36. 조합의 합
leetcode 39. Combination Sum 문제입니다.
leetcode.com/problems/combination-sum/
풀이
dfs와 백트래킹을 활용한 풀이법입니다.
def combinationSum(self, candidates,target):
result=[]
def dfs(csum, index, path):
# 종료 조건
if csum < 0:
return
if csum == 0:
result.append(path)
return
# 자신 부터 하위 원소 까지의 나열 재귀 호출
for i in range(index, len(candidates)):
dfs(csum - candidates[i], i, path + [candidates[i]])
dfs(target, 0, [])
return result
반응형
'Python > 알고리즘' 카테고리의 다른 글
[파이썬 알고리즘 인터뷰] 38. 일정 재구성 (0) | 2021.03.13 |
---|---|
[파이썬 알고리즘 인터뷰] 37. 부분 집합 (0) | 2021.03.13 |
[파이썬 알고리즘 인터뷰] 34. 순열 (0) | 2021.03.09 |
[파이썬 알고리즘 인터뷰] 33. 전화 번호 문자 조합 (0) | 2021.03.09 |
[파이썬 알고리즘 인터뷰] 32. 섬의 개수 (0) | 2021.03.09 |