491.递增子序列

class Solution {
    public:vector<vector<int>>res;
    vector<int>cur;
    vector<int>v;
    void bt(int start){
        if(cur.size()>1)res.push_back(cur);
        if(start>=v.size())return;
        unordered_set<int> uset; 
        for(int i=start;i<v.size();i++){
            if(cur.empty()||v[i]>=cur.back())
            {
                if(uset.find(v[i])!=uset.end())continue;
                uset.insert(v[i]);
                cur.push_back(v[i]);bt(i+1);cur.pop_back();
            }
        }

    }
    vector<vector<int>> findSubsequences(vector<int>& nums) {v=nums;bt(0);return res;}
};

本层访问过的元素不再访问,误以为是前后不用重复的就行,需要使用set