[LeetCode] 77. Combinations

Chobby·2024년 9월 12일
1

LeetCode

목록 보기
113/194

조합을 구하는 로직을 작성해야하는 문제이다.

백트레킹을 사용하여 조합을 구하면 된다.

😎풀이

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
};
profile
내 지식을 공유할 수 있는 대담함

0개의 댓글