leetcode

Solution to some Leetcode problems written in C++
git clone git://git.dimitrijedobrota.com/leetcode.git
Log | Files | Refs | README | LICENSE

0491.cpp (622B)


0 class Solution { 1 vector<vector<int>> res; 2 vector<int> seq; 3 4 public: 5 vector<vector<int>> findSubsequences(vector<int> &nums) { 6 dfs(nums, 0); 7 return res; 8 } 9 10 void dfs(vector<int> &nums, int pos) { 11 if (seq.size() > 1) res.push_back(seq); 12 unordered_set<int> hash; 13 for (int i = pos; i < nums.size(); i++) { 14 if ((seq.empty() || nums[i] >= seq.back()) && !hash.count(nums[i])) { 15 seq.push_back(nums[i]); 16 dfs(nums, i + 1); 17 seq.pop_back(); 18 hash.insert(nums[i]); 19 } 20 } 21 } 22 };