zoukankan      html  css  js  c++  java
  • Leetcode77. Combinations组合

    给定两个整数 n 和 k,返回 1 ... n 中所有可能的 k 个数的组合。

    示例:

    输入: n = 4, k = 2 输出: [ [2,4], [3,4], [2,3], [1,2], [1,3], [1,4], ]

    class Solution {
    public:
        vector<vector<int> >res;
        int N;
        int K;
        vector<vector<int> > combine(int n, int k)
        {
            if(n == 0 || k > n)
                return res;
            K = k;
            N= n;
            vector<int> v;
            DFS(1, v, 0);
            return res;
        }
    
        void DFS(int pos, vector<int> &v, int cnt)
        {
            if(cnt == K)
            {
                res.push_back(v);
                return;
            }
            for(int i = pos; i <= N; i++)
            {
                v.push_back(i);
                DFS(i + 1, v, cnt + 1);
                v.pop_back();
            }
        }
    };
  • 相关阅读:
    FreePascal
    Delphi
    FreePascal
    FreePascal
    Linux
    FreePascal
    FreePascal
    CodeTyphon
    IDEA
    工作流科普——don't ask i don't know either
  • 原文地址:https://www.cnblogs.com/lMonster81/p/10433858.html
Copyright © 2011-2022 走看看