class Solution {
public:
vector<string>res;
vector<string> generateParenthesis(int n) {
generate(0,2*n,0,0,"");
return res;
}
void generate(int dep,int maxdep,int leftnum,int lefttotal,string s)
{
if(lefttotal*2>maxdep)
return ;
if(dep==maxdep)
{
res.push_back(s);
return;
}
dep++;
for(int i=0;i<2;i++)
{
if(i==0)
{
generate(dep,maxdep,leftnum+1,lefttotal+1,s+'(');
}
else
{
if(leftnum>0)
{
generate(dep,maxdep,leftnum-1,lefttotal,s+')');
}
}
}
}
};
递归,哼哼
Generate Parentheses
最新推荐文章于 2024-01-18 13:52:44 发布