Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /**
- knakul853
- **/
- class Solution {
- public:
- vector<string> generateParenthesis(int n) {
- vector<string>ans;
- backtrack(n , ans , 0 , 0 , "");
- return ans;
- }
- void backtrack(int n, vector<string>& ans , int open , int close , string res)
- {
- if(res.size()==n*2)
- {
- ans.push_back(res);
- }
- if(open < n) backtrack( n , ans , open+1 , close , res+"("); // u can have at max n opening brackets.
- if(close < open)backtrack(n , ans , open , close+1 , res+")" ); // u must close after opening the brackets.
- }
- };
Add Comment
Please, Sign In to add comment