class Solution:
def combine(self, n: int, k: int):
def dfs(num , k):
if k == 0:
answer.append(cur[:])
return
for i in range(num, n + 1):
cur.append(i)
dfs(i + 1, k - 1)
cur.pop()
answer = []
cur = []
dfs(1, k)
return answer
itertools 사용
이게 훨씬 빠르니까 그냥 구하기만 하는거면 이거 써야함
import itertools
class Solution:
def combine(self, n, k):
return list(itertools.combinations(range(1, n + 1), k))