77. Combinations | LeetCode Solution
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
class Solution
{
public:
vector<vector<int>> combine(int n, int k)
{
vector<vector<int>> result;
int i = 0;
vector<int> p(k, 0);
while (i >= 0)
{
p[i]++;
if (p[i] > n)
--i;
else if (i == k - 1)
result.push_back(p);
else
{
++i;
p[i] = p[i - 1];
}
}
return result;
}
};
0 Comments
If you have any doubts/suggestion/any query or want to improve this article, you can comment down below and let me know. Will reply to you soon.