class Solution:
def combinationSum3(self, k: int, n: int) -> List[List[int]]:
end=[]
def dfs(k,n,l,i):
if(sum(l)==n and len(l)==k):
end.append(l.copy())
if(i>9 or len(l)>=k):
return
l.append(i)
dfs(k,n,l,i+1)
l.pop()
dfs(k,n,l,i+1)
dfs(k,n,[],1)
end = list(set([tuple(t) for t in end]))
return end
没有剪枝暴力解这个排名我是惊讶的,这种题只要把候选集排序,然后用这种模板得到所有解最终去重,是一种通用模板,组合123都可以解