Untitled

 avatar
unknown
plain_text
13 days ago
792 B
4
Indexable
class Solution {
public:
    void sequence(vector<string>&ans, string temp,int n,int open,int close){
        
        if (open == n && close == n) {
            ans.push_back(temp);
            return;
        }
       
        
        if(open<n){
             temp.push_back('(');
             open++;
            sequence(ans,temp,n,open,close);
        }
        
        if(close<open){
            temp.push_back(')');
            close++;
            sequence(ans,temp,n,open,close);
        }

    }
    vector<string> generateParenthesis(int n) {
        if(n==0) return {};
        vector<string>ans;
        string temp={"("};
        int open=1;
        int close=0;
        sequence(ans,temp,n,open,close);
        return ans;
        
    };
};
Leave a Comment