class Solution {public: vector> combine(int n, int k) { vector > res; vector out; helper(n, k, 1, out, res); return res; } void helper(int n, int k, int level, vector & out, vector >& res) { if (out.size() == k) {res.push_back(out); return;} for (int i = level; i <= n; ++i) { out.push_back(i); helper(n, k, i + 1, out, res); out.pop_back(); } }};