77. Combinations
Medium
Given two integers n
and k
, return all possible combinations of k
numbers out of the range [1, n]
.
You may return the answer in any order.
Example 1:
Input: n = 4, k = 2
Output:
[
[2,4],
[3,4],
[2,3],
[1,2],
[1,3],
[1,4],
]
Example 2:
Input: n = 1, k = 1
Output: [[1]]
Constraints:
1 <= n <= 20
1 <= k <= n
Solution
class Solution:
def combine(self, n: int, k: int) -> List[List[int]]:
result = []
def recursion(n, k, start=1, temp=[]):
nonlocal result
if k <= 0:
result.append(list(temp))
return temp
for index in range(start, n+1):
temp.append(index)
# if (k-1) == 0:
# result.append(list(temp))
t = recursion(n, k-1,index+1, temp)
temp.pop()
recursion(n,k,1,[])
return result
Last updated