조합을 구하는 로직을 작성해야하는 문제이다.
백트레킹을 사용하여 조합을 구하면 된다.
function combine(n: number, k: number): number[][] {
if(n === 1) return [[1]]
const result = []
// 조합 구하기
function getCombinations(fixNum: number, nums: number[]) {
if(nums.length === k) {
result.push([...nums])
return
}
for(let i = fixNum; i <= n; i++) {
nums.push(i)
getCombinations(i + 1, nums)
nums.pop()
}
}
getCombinations(1, [])
return result
};