class Solution:
def combine(self, n: int, k: int) -> List[List[int]]:
self.res = []
tmpList = []
self.dfs(n, k, tmpList, 1) #从1开始dfs
return self.res
def dfs(self, n, k, tmpList, start):
if len(tmpList) == k:
self.res.append(list(tmpList)) #注意要用复制,而不是直接加入
for i in range(start, n+1):
self.dfs(n, k, tmpList + [i], i+1) #start为i后一位