1
// Recursive Solution
2
// Time complexity : O(N*(2^N))
3
// Space complexity : O(N*(2^N))
4
class Solution {
5
public:
6
vector<vector<int>> ans;
7

8
void sub(vector<int> &nums, int i, vector<int> temp) {
9
if (i == nums.size()) {
10
ans.push_back(temp);
11
return;
12
}
13

14
sub(nums, i + 1, temp);
15
temp.push_back(nums[i]);
16
sub(nums, i + 1, temp);
17
}
18

19
vector<vector<int>> subsets(vector<int> &nums) {
20
vector<int> temp;
21
sub(nums, 0, temp); // or sub(nums, 0, vector<int> {});
22
return ans;
23
}
24
};

0

WPM •0 •0

100%

ACC •0 •0

0s

TIME •0