Leet Code 알고리즘
(Leet Code JS)Combinations
naeunchan
2021. 9. 23. 09:24
728x90
반응형
77. Combinations
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
const combination = (arr, count) => {
const result = [];
if(count === 1){
return arr.map((val) => [val]);
}
arr.forEach((fixed, index, origin) => {
const rest = origin.slice(index + 1);
const cb = combination(rest, count - 1);
const attached = cb.map((c) => [fixed, ...c]);
result.push(...attached);
});
return result;
}
const combine = (n, k) => {
const array = [];
for(let i = 1; i <= n; i++){
array.push(i);
}
return combination(array, k);
};728x90
반응형