코테준비 - Combinations

정상화·2023년 2월 26일

LeetCode

목록 보기
74/222

Combinations

class Solution {
private:
    vector<vector<int>> res;
public:
    vector<vector<int>> combine(int n, int k) {
        vector<int> pack;
        for (int i = 1; i <= n; i++) {
            recursive(pack, i,n, k-1);
        }
        return res;
    }

    void recursive(vector<int>& pack, int picked, int n, int remains) {
        pack.push_back(picked);

        if (remains == 0) {
            res.push_back(pack);
            pack.pop_back();
            return;
        }

        for (int i = picked + 1; i <= n; i++) {
            recursive(pack, i, n, remains - 1);
        }
        pack.pop_back();
    }
};
profile
백엔드 희망

0개의 댓글