数字 n 代表生成括号的对数,请你设计一个函数,用于能够生成所有可能的并且 有效的 括号组合。
示例 1:
输入:n = 3
输出:["((()))","(()())","(())()","()(())","()()()"]
示例 2:
输入:n = 1
输出:["()"]
提示:
1 <= n <= 8
来源:力扣(LeetCode)
链接:https://leetcode-cn.com/problems/generate-parentheses
著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。
最快的方法当然是枚举了!
这个代码大家图一乐就得了,这个题我想到的比较正常的方法还是数学方法,因为每个“(”需要匹配一个“)”,所以只需要确定出“(”的位置即可。然后还需要满足“(”后面留出足够的空白。
大家别学这种代码哈,图一乐就行了
别看,要脸
class Solution {
public:
vector<string> generateParenthesis(int n) {
switch (n){
case 1:return {"()"};
case 2:return {"()()","(())"};
case 3:return {"((()))","(()())","(())()","()(())","()()()"};
case 4:return {"(((())))","((()()))","((())())","((()))()","(()(()))","(()()())","(()())()","(())(())","(())()()","()((()))","()(()())","()(())()","()()(())","()()()()"};
case 5:return {"((((()))))","(((()())))","(((())()))","(((()))())","(((())))()","((()(())))","((()()()))","((()())())","((()()))()","((())(()))","((())()())","((())())()","((()))(())","((()))()()","(()((())))","(()(()()))","(()(())())","(()(()))()","(()()(()))","(()()()())","(()()())()","(()())(())","(()())()()","(())((()))","(())(()())","(())(())()","(())()(())","(())()()()","()(((())))","()((()()))","()((())())","()((()))()","()(()(()))","()(()()())","()(()())()","()(())(())","()(())()()","()()((()))","()()(()())","()()(())()","()()()(())","()()()()()"};
case 6:return {"()()()()()()","()()()()(())","()()()(())()","()()()(()())","()()()((()))","()()(())()()","()()(())(())","()()(()())()","()()((()))()","()()(()()())","()()(()(()))","()()((())())","()()((()()))","()()(((())))","()(())()()()","()(())()(())","()(())(())()","()(())(()())","()(())((()))","()(()())()()","()(()())(())","()((()))()()","()((()))(())","()(()()())()","()(()(()))()","()((())())()","()((()()))()","()(((())))()","()(()()()())","()(()()(()))","()(()(())())","()(()(()()))","()(()((())))","()((())()())","()((())(()))","()((()())())","()(((()))())","()((()()()))","()((()(())))","()(((())()))","()(((()())))","()((((()))))","(())()()()()","(())()()(())","(())()(())()","(())()(()())","(())()((()))","(())(())()()","(())(())(())","(())(()())()","(())((()))()","(())(()()())","(())(()(()))","(())((())())","(())((()()))","(())(((())))","(()())()()()","(()())()(())","(()())(())()","(()())(()())","(()())((()))","((()))()()()","((()))()(())","((()))(())()","((()))(()())","((()))((()))","(()()())()()","(()()())(())","(()(()))()()","(()(()))(())","((())())()()","((())())(())","((()()))()()","((()()))(())","(((())))()()","(((())))(())","(()()()())()","(()()(()))()","(()(())())()","(()(()()))()","(()((())))()","((())()())()","((())(()))()","((()())())()","(((()))())()","((()()()))()","((()(())))()","(((())()))()","(((()())))()","((((()))))()","(()()()()())","(()()()(()))","(()()(())())","(()()(()()))","(()()((())))","(()(())()())","(()(())(()))","(()(()())())","(()((()))())","(()(()()()))","(()(()(())))","(()((())()))","(()((()())))","(()(((()))))","((())()()())","((())()(()))","((())(())())","((())(()()))","((())((())))","((()())()())","((()())(()))","(((()))()())","(((()))(()))","((()()())())","((()(()))())","(((())())())","(((()()))())","((((())))())","((()()()()))","((()()(())))","((()(())()))","((()(()())))","((()((()))))","(((())()()))","(((())(())))","(((()())()))","((((()))()))","(((()()())))","(((()(()))))","((((())())))","((((()()))))","(((((())))))"};
case 7:return {"()()()()()()()","()()()()()(())","()()()()(())()","()()()()(()())","()()()()((()))","()()()(())()()","()()()(())(())","()()()(()())()","()()()((()))()","()()()(()()())","()()()(()(()))","()()()((())())","()()()((()()))","()()()(((())))","()()(())()()()","()()(())()(())","()()(())(())()","()()(())(()())","()()(())((()))","()()(()())()()","()()(()())(())","()()((()))()()","()()((()))(())","()()(()()())()","()()(()(()))()","()()((())())()","()()((()()))()","()()(((())))()","()()(()()()())","()()(()()(()))","()()(()(())())","()()(()(()()))","()()(()((())))","()()((())()())","()()((())(()))","()()((()())())","()()(((()))())","()()((()()()))","()()((()(())))","()()(((())()))","()()(((()())))","()()((((()))))","()(())()()()()","()(())()()(())","()(())()(())()","()(())()(()())","()(())()((()))","()(())(())()()","()(())(())(())","()(())(()())()","()(())((()))()","()(())(()()())","()(())(()(()))","()(())((())())","()(())((()()))","()(())(((())))","()(()())()()()","()(()())()(())","()(()())(())()","()(()())(()())","()(()())((()))","()((()))()()()","()((()))()(())","()((()))(())()","()((()))(()())","()((()))((()))","()(()()())()()","()(()()())(())","()(()(()))()()","()(()(()))(())","()((())())()()","()((())())(())","()((()()))()()","()((()()))(())","()(((())))()()","()(((())))(())","()(()()()())()","()(()()(()))()","()(()(())())()","()(()(()()))()","()(()((())))()","()((())()())()","()((())(()))()","()((()())())()","()(((()))())()","()((()()()))()","()((()(())))()","()(((())()))()","()(((()())))()","()((((()))))()","()(()()()()())","()(()()()(()))","()(()()(())())","()(()()(()()))","()(()()((())))","()(()(())()())","()(()(())(()))","()(()(()())())","()(()((()))())","()(()(()()()))","()(()(()(())))","()(()((())()))","()(()((()())))","()(()(((()))))","()((())()()())","()((())()(()))","()((())(())())","()((())(()()))","()((())((())))","()((()())()())","()((()())(()))","()(((()))()())","()(((()))(()))","()((()()())())","()((()(()))())","()(((())())())","()(((()()))())","()((((())))())","()((()()()()))","()((()()(())))","()((()(())()))","()((()(()())))","()((()((()))))","()(((())()()))","()(((())(())))","()(((()())()))","()((((()))()))","()(((()()())))","()(((()(()))))","()((((())())))","()((((()()))))","()(((((())))))","(())()()()()()","(())()()()(())","(())()()(())()","(())()()(()())","(())()()((()))","(())()(())()()","(())()(())(())","(())()(()())()","(())()((()))()","(())()(()()())","(())()(()(()))","(())()((())())","(())()((()()))","(())()(((())))","(())(())()()()","(())(())()(())","(())(())(())()","(())(())(()())","(())(())((()))","(())(()())()()","(())(()())(())","(())((()))()()","(())((()))(())","(())(()()())()","(())(()(()))()","(())((())())()","(())((()()))()","(())(((())))()","(())(()()()())","(())(()()(()))","(())(()(())())","(())(()(()()))","(())(()((())))","(())((())()())","(())((())(()))","(())((()())())","(())(((()))())","(())((()()()))","(())((()(())))","(())(((())()))","(())(((()())))","(())((((()))))","(()())()()()()","(()())()()(())","(()())()(())()","(()())()(()())","(()())()((()))","(()())(())()()","(()())(())(())","(()())(()())()","(()())((()))()","(()())(()()())","(()())(()(()))","(()())((())())","(()())((()()))","(()())(((())))","((()))()()()()","((()))()()(())","((()))()(())()","((()))()(()())","((()))()((()))","((()))(())()()","((()))(())(())","((()))(()())()","((()))((()))()","((()))(()()())","((()))(()(()))","((()))((())())","((()))((()()))","((()))(((())))","(()()())()()()","(()()())()(())","(()()())(())()","(()()())(()())","(()()())((()))","(()(()))()()()","(()(()))()(())","(()(()))(())()","(()(()))(()())","(()(()))((()))","((())())()()()","((())())()(())","((())())(())()","((())())(()())","((())())((()))","((()()))()()()","((()()))()(())","((()()))(())()","((()()))(()())","((()()))((()))","(((())))()()()","(((())))()(())","(((())))(())()","(((())))(()())","(((())))((()))","(()()()())()()","(()()()())(())","(()()(()))()()","(()()(()))(())","(()(())())()()","(()(())())(())","(()(()()))()()","(()(()()))(())","(()((())))()()","(()((())))(())","((())()())()()","((())()())(())","((())(()))()()","((())(()))(())","((()())())()()","((()())())(())","(((()))())()()","(((()))())(())","((()()()))()()","((()()()))(())","((()(())))()()","((()(())))(())","(((())()))()()","(((())()))(())","(((()())))()()","(((()())))(())","((((()))))()()","((((()))))(())","(()()()()())()","(()()()(()))()","(()()(())())()","(()()(()()))()","(()()((())))()","(()(())()())()","(()(())(()))()","(()(()())())()","(()((()))())()","(()(()()()))()","(()(()(())))()","(()((())()))()","(()((()())))()","(()(((()))))()","((())()()())()","((())()(()))()","((())(())())()","((())(()()))()","((())((())))()","((()())()())()","((()())(()))()","(((()))()())()","(((()))(()))()","((()()())())()","((()(()))())()","(((())())())()","(((()()))())()","((((())))())()","((()()()()))()","((()()(())))()","((()(())()))()","((()(()())))()","((()((()))))()","(((())()()))()","(((())(())))()","(((()())()))()","((((()))()))()","(((()()())))()","(((()(()))))()","((((())())))()","((((()()))))()","(((((())))))()","(()()()()()())","(()()()()(()))","(()()()(())())","(()()()(()()))","(()()()((())))","(()()(())()())","(()()(())(()))","(()()(()())())","(()()((()))())","(()()(()()()))","(()()(()(())))","(()()((())()))","(()()((()())))","(()()(((()))))","(()(())()()())","(()(())()(()))","(()(())(())())","(()(())(()()))","(()(())((())))","(()(()())()())","(()(()())(()))","(()((()))()())","(()((()))(()))","(()(()()())())","(()(()(()))())","(()((())())())","(()((()()))())","(()(((())))())","(()(()()()()))","(()(()()(())))","(()(()(())()))","(()(()(()())))","(()(()((()))))","(()((())()()))","(()((())(())))","(()((()())()))","(()(((()))()))","(()((()()())))","(()((()(()))))","(()(((())())))","(()(((()()))))","(()((((())))))","((())()()()())","((())()()(()))","((())()(())())","((())()(()()))","((())()((())))","((())(())()())","((())(())(()))","((())(()())())","((())((()))())","((())(()()()))","((())(()(())))","((())((())()))","((())((()())))","((())(((()))))","((()())()()())","((()())()(()))","((()())(())())","((()())(()()))","((()())((())))","(((()))()()())","(((()))()(()))","(((()))(())())","(((()))(()()))","(((()))((())))","((()()())()())","((()()())(()))","((()(()))()())","((()(()))(()))","(((())())()())","(((())())(()))","(((()()))()())","(((()()))(()))","((((())))()())","((((())))(()))","((()()()())())","((()()(()))())","((()(())())())","((()(()()))())","((()((())))())","(((())()())())","(((())(()))())","(((()())())())","((((()))())())","(((()()()))())","(((()(())))())","((((())()))())","((((()())))())","(((((()))))())","((()()()()()))","((()()()(())))","((()()(())()))","((()()(()())))","((()()((()))))","((()(())()()))","((()(())(())))","((()(()())()))","((()((()))()))","((()(()()())))","((()(()(()))))","((()((())())))","((()((()()))))","((()(((())))))","(((())()()()))","(((())()(())))","(((())(())()))","(((())(()())))","(((())((()))))","(((()())()()))","(((()())(())))","((((()))()()))","((((()))(())))","(((()()())()))","(((()(()))()))","((((())())()))","((((()()))()))","(((((())))()))","(((()()()())))","(((()()(()))))","(((()(())())))","(((()(()()))))","(((()((())))))","((((())()())))","((((())(()))))","((((()())())))","(((((()))())))","((((()()()))))","((((()(())))))","(((((())()))))","(((((()())))))","((((((()))))))"};
case 8:return {"()()()()()()()()","()()()()()()(())","()()()()()(())()","()()()()()(()())","()()()()()((()))","()()()()(())()()","()()()()(())(())","()()()()(()())()","()()()()((()))()","()()()()(()()())","()()()()(()(()))","()()()()((())())","()()()()((()()))","()()()()(((())))","()()()(())()()()","()()()(())()(())","()()()(())(())()","()()()(())(()())","()()()(())((()))","()()()(()())()()","()()()(()())(())","()()()((()))()()","()()()((()))(())","()()()(()()())()","()()()(()(()))()","()()()((())())()","()()()((()()))()","()()()(((())))()","()()()(()()()())","()()()(()()(()))","()()()(()(())())","()()()(()(()()))","()()()(()((())))","()()()((())()())","()()()((())(()))","()()()((()())())","()()()(((()))())","()()()((()()()))","()()()((()(())))","()()()(((())()))","()()()(((()())))","()()()((((()))))","()()(())()()()()","()()(())()()(())","()()(())()(())()","()()(())()(()())","()()(())()((()))","()()(())(())()()","()()(())(())(())","()()(())(()())()","()()(())((()))()","()()(())(()()())","()()(())(()(()))","()()(())((())())","()()(())((()()))","()()(())(((())))","()()(()())()()()","()()(()())()(())","()()(()())(())()","()()(()())(()())","()()(()())((()))","()()((()))()()()","()()((()))()(())","()()((()))(())()","()()((()))(()())","()()((()))((()))","()()(()()())()()","()()(()()())(())","()()(()(()))()()","()()(()(()))(())","()()((())())()()","()()((())())(())","()()((()()))()()","()()((()()))(())","()()(((())))()()","()()(((())))(())","()()(()()()())()","()()(()()(()))()","()()(()(())())()","()()(()(()()))()","()()(()((())))()","()()((())()())()","()()((())(()))()","()()((()())())()","()()(((()))())()","()()((()()()))()","()()((()(())))()","()()(((())()))()","()()(((()())))()","()()((((()))))()","()()(()()()()())","()()(()()()(()))","()()(()()(())())","()()(()()(()()))","()()(()()((())))","()()(()(())()())","()()(()(())(()))","()()(()(()())())","()()(()((()))())","()()(()(()()()))","()()(()(()(())))","()()(()((())()))","()()(()((()())))","()()(()(((()))))","()()((())()()())","()()((())()(()))","()()((())(())())","()()((())(()()))","()()((())((())))","()()((()())()())","()()((()())(()))","()()(((()))()())","()()(((()))(()))","()()((()()())())","()()((()(()))())","()()(((())())())","()()(((()()))())","()()((((())))())","()()((()()()()))","()()((()()(())))","()()((()(())()))","()()((()(()())))","()()((()((()))))","()()(((())()()))","()()(((())(())))","()()(((()())()))","()()((((()))()))","()()(((()()())))","()()(((()(()))))","()()((((())())))","()()((((()()))))","()()(((((())))))","()(())()()()()()","()(())()()()(())","()(())()()(())()","()(())()()(()())","()(())()()((()))","()(())()(())()()","()(())()(())(())","()(())()(()())()","()(())()((()))()","()(())()(()()())","()(())()(()(()))","()(())()((())())","()(())()((()()))","()(())()(((())))","()(())(())()()()","()(())(())()(())","()(())(())(())()","()(())(())(()())","()(())(())((()))","()(())(()())()()","()(())(()())(())","()(())((()))()()","()(())((()))(())","()(())(()()())()","()(())(()(()))()","()(())((())())()","()(())((()()))()","()(())(((())))()","()(())(()()()())","()(())(()()(()))","()(())(()(())())","()(())(()(()()))","()(())(()((())))","()(())((())()())","()(())((())(()))","()(())((()())())","()(())(((()))())","()(())((()()()))","()(())((()(())))","()(())(((())()))","()(())(((()())))","()(())((((()))))","()(()())()()()()","()(()())()()(())","()(()())()(())()","()(()())()(()())","()(()())()((()))","()(()())(())()()","()(()())(())(())","()(()())(()())()","()(()())((()))()","()(()())(()()())","()(()())(()(()))","()(()())((())())","()(()())((()()))","()(()())(((())))","()((()))()()()()","()((()))()()(())","()((()))()(())()","()((()))()(()())","()((()))()((()))","()((()))(())()()","()((()))(())(())","()((()))(()())()","()((()))((()))()","()((()))(()()())","()((()))(()(()))","()((()))((())())","()((()))((()()))","()((()))(((())))","()(()()())()()()","()(()()())()(())","()(()()())(())()","()(()()())(()())","()(()()())((()))","()(()(()))()()()","()(()(()))()(())","()(()(()))(())()","()(()(()))(()())","()(()(()))((()))","()((())())()()()","()((())())()(())","()((())())(())()","()((())())(()())","()((())())((()))","()((()()))()()()","()((()()))()(())","()((()()))(())()","()((()()))(()())","()((()()))((()))","()(((())))()()()","()(((())))()(())","()(((())))(())()","()(((())))(()())","()(((())))((()))","()(()()()())()()","()(()()()())(())","()(()()(()))()()","()(()()(()))(())","()(()(())())()()","()(()(())())(())","()(()(()()))()()","()(()(()()))(())","()(()((())))()()","()(()((())))(())","()((())()())()()","()((())()())(())","()((())(()))()()","()((())(()))(())","()((()())())()()","()((()())())(())","()(((()))())()()","()(((()))())(())","()((()()()))()()","()((()()()))(())","()((()(())))()()","()((()(())))(())","()(((())()))()()","()(((())()))(())","()(((()())))()()","()(((()())))(())","()((((()))))()()","()((((()))))(())","()(()()()()())()","()(()()()(()))()","()(()()(())())()","()(()()(()()))()","()(()()((())))()","()(()(())()())()","()(()(())(()))()","()(()(()())())()","()(()((()))())()","()(()(()()()))()","()(()(()(())))()","()(()((())()))()","()(()((()())))()","()(()(((()))))()","()((())()()())()","()((())()(()))()","()((())(())())()","()((())(()()))()","()((())((())))()","()((()())()())()","()((()())(()))()","()(((()))()())()","()(((()))(()))()","()((()()())())()","()((()(()))())()","()(((())())())()","()(((()()))())()","()((((())))())()","()((()()()()))()","()((()()(())))()","()((()(())()))()","()((()(()())))()","()((()((()))))()","()(((())()()))()","()(((())(())))()","()(((()())()))()","()((((()))()))()","()(((()()())))()","()(((()(()))))()","()((((())())))()","()((((()()))))()","()(((((())))))()","()(()()()()()())","()(()()()()(()))","()(()()()(())())","()(()()()(()()))","()(()()()((())))","()(()()(())()())","()(()()(())(()))","()(()()(()())())","()(()()((()))())","()(()()(()()()))","()(()()(()(())))","()(()()((())()))","()(()()((()())))","()(()()(((()))))","()(()(())()()())","()(()(())()(()))","()(()(())(())())","()(()(())(()()))","()(()(())((())))","()(()(()())()())","()(()(()())(()))","()(()((()))()())","()(()((()))(()))","()(()(()()())())","()(()(()(()))())","()(()((())())())","()(()((()()))())","()(()(((())))())","()(()(()()()()))","()(()(()()(())))","()(()(()(())()))","()(()(()(()())))","()(()(()((()))))","()(()((())()()))","()(()((())(())))","()(()((()())()))","()(()(((()))()))","()(()((()()())))","()(()((()(()))))","()(()(((())())))","()(()(((()()))))","()(()((((())))))","()((())()()()())","()((())()()(()))","()((())()(())())","()((())()(()()))","()((())()((())))","()((())(())()())","()((())(())(()))","()((())(()())())","()((())((()))())","()((())(()()()))","()((())(()(())))","()((())((())()))","()((())((()())))","()((())(((()))))","()((()())()()())","()((()())()(()))","()((()())(())())","()((()())(()()))","()((()())((())))","()(((()))()()())","()(((()))()(()))","()(((()))(())())","()(((()))(()()))","()(((()))((())))","()((()()())()())","()((()()())(()))","()((()(()))()())","()((()(()))(()))","()(((())())()())","()(((())())(()))","()(((()()))()())","()(((()()))(()))","()((((())))()())","()((((())))(()))","()((()()()())())","()((()()(()))())","()((()(())())())","()((()(()()))())","()((()((())))())","()(((())()())())","()(((())(()))())","()(((()())())())","()((((()))())())","()(((()()()))())","()(((()(())))())","()((((())()))())","()((((()())))())","()(((((()))))())","()((()()()()()))","()((()()()(())))","()((()()(())()))","()((()()(()())))","()((()()((()))))","()((()(())()()))","()((()(())(())))","()((()(()())()))","()((()((()))()))","()((()(()()())))","()((()(()(()))))","()((()((())())))","()((()((()()))))","()((()(((())))))","()(((())()()()))","()(((())()(())))","()(((())(())()))","()(((())(()())))","()(((())((()))))","()(((()())()()))","()(((()())(())))","()((((()))()()))","()((((()))(())))","()(((()()())()))","()(((()(()))()))","()((((())())()))","()((((()()))()))","()(((((())))()))","()(((()()()())))","()(((()()(()))))","()(((()(())())))","()(((()(()()))))","()(((()((())))))","()((((())()())))","()((((())(()))))","()((((()())())))","()(((((()))())))","()((((()()()))))","()((((()(())))))","()(((((())()))))","()(((((()())))))","()((((((()))))))","(())()()()()()()","(())()()()()(())","(())()()()(())()","(())()()()(()())","(())()()()((()))","(())()()(())()()","(())()()(())(())","(())()()(()())()","(())()()((()))()","(())()()(()()())","(())()()(()(()))","(())()()((())())","(())()()((()()))","(())()()(((())))","(())()(())()()()","(())()(())()(())","(())()(())(())()","(())()(())(()())","(())()(())((()))","(())()(()())()()","(())()(()())(())","(())()((()))()()","(())()((()))(())","(())()(()()())()","(())()(()(()))()","(())()((())())()","(())()((()()))()","(())()(((())))()","(())()(()()()())","(())()(()()(()))","(())()(()(())())","(())()(()(()()))","(())()(()((())))","(())()((())()())","(())()((())(()))","(())()((()())())","(())()(((()))())","(())()((()()()))","(())()((()(())))","(())()(((())()))","(())()(((()())))","(())()((((()))))","(())(())()()()()","(())(())()()(())","(())(())()(())()","(())(())()(()())","(())(())()((()))","(())(())(())()()","(())(())(())(())","(())(())(()())()","(())(())((()))()","(())(())(()()())","(())(())(()(()))","(())(())((())())","(())(())((()()))","(())(())(((())))","(())(()())()()()","(())(()())()(())","(())(()())(())()","(())(()())(()())","(())(()())((()))","(())((()))()()()","(())((()))()(())","(())((()))(())()","(())((()))(()())","(())((()))((()))","(())(()()())()()","(())(()()())(())","(())(()(()))()()","(())(()(()))(())","(())((())())()()","(())((())())(())","(())((()()))()()","(())((()()))(())","(())(((())))()()","(())(((())))(())","(())(()()()())()","(())(()()(()))()","(())(()(())())()","(())(()(()()))()","(())(()((())))()","(())((())()())()","(())((())(()))()","(())((()())())()","(())(((()))())()","(())((()()()))()","(())((()(())))()","(())(((())()))()","(())(((()())))()","(())((((()))))()","(())(()()()()())","(())(()()()(()))","(())(()()(())())","(())(()()(()()))","(())(()()((())))","(())(()(())()())","(())(()(())(()))","(())(()(()())())","(())(()((()))())","(())(()(()()()))","(())(()(()(())))","(())(()((())()))","(())(()((()())))","(())(()(((()))))","(())((())()()())","(())((())()(()))","(())((())(())())","(())((())(()()))","(())((())((())))","(())((()())()())","(())((()())(()))","(())(((()))()())","(())(((()))(()))","(())((()()())())","(())((()(()))())","(())(((())())())","(())(((()()))())","(())((((())))())","(())((()()()()))","(())((()()(())))","(())((()(())()))","(())((()(()())))","(())((()((()))))","(())(((())()()))","(())(((())(())))","(())(((()())()))","(())((((()))()))","(())(((()()())))","(())(((()(()))))","(())((((())())))","(())((((()()))))","(())(((((())))))","(()())()()()()()","(()())()()()(())","(()())()()(())()","(()())()()(()())","(()())()()((()))","(()())()(())()()","(()())()(())(())","(()())()(()())()","(()())()((()))()","(()())()(()()())","(()())()(()(()))","(()())()((())())","(()())()((()()))","(()())()(((())))","(()())(())()()()","(()())(())()(())","(()())(())(())()","(()())(())(()())","(()())(())((()))","(()())(()())()()","(()())(()())(())","(()())((()))()()","(()())((()))(())","(()())(()()())()","(()())(()(()))()","(()())((())())()","(()())((()()))()","(()())(((())))()","(()())(()()()())","(()())(()()(()))","(()())(()(())())","(()())(()(()()))","(()())(()((())))","(()())((())()())","(()())((())(()))","(()())((()())())","(()())(((()))())","(()())((()()()))","(()())((()(())))","(()())(((())()))","(()())(((()())))","(()())((((()))))","((()))()()()()()","((()))()()()(())","((()))()()(())()","((()))()()(()())","((()))()()((()))","((()))()(())()()","((()))()(())(())","((()))()(()())()","((()))()((()))()","((()))()(()()())","((()))()(()(()))","((()))()((())())","((()))()((()()))","((()))()(((())))","((()))(())()()()","((()))(())()(())","((()))(())(())()","((()))(())(()())","((()))(())((()))","((()))(()())()()","((()))(()())(())","((()))((()))()()","((()))((()))(())","((()))(()()())()","((()))(()(()))()","((()))((())())()","((()))((()()))()","((()))(((())))()","((()))(()()()())","((()))(()()(()))","((()))(()(())())","((()))(()(()()))","((()))(()((())))","((()))((())()())","((()))((())(()))","((()))((()())())","((()))(((()))())","((()))((()()()))","((()))((()(())))","((()))(((())()))","((()))(((()())))","((()))((((()))))","(()()())()()()()","(()()())()()(())","(()()())()(())()","(()()())()(()())","(()()())()((()))","(()()())(())()()","(()()())(())(())","(()()())(()())()","(()()())((()))()","(()()())(()()())","(()()())(()(()))","(()()())((())())","(()()())((()()))","(()()())(((())))","(()(()))()()()()","(()(()))()()(())","(()(()))()(())()","(()(()))()(()())","(()(()))()((()))","(()(()))(())()()","(()(()))(())(())","(()(()))(()())()","(()(()))((()))()","(()(()))(()()())","(()(()))(()(()))","(()(()))((())())","(()(()))((()()))","(()(()))(((())))","((())())()()()()","((())())()()(())","((())())()(())()","((())())()(()())","((())())()((()))","((())())(())()()","((())())(())(())","((())())(()())()","((())())((()))()","((())())(()()())","((())())(()(()))","((())())((())())","((())())((()()))","((())())(((())))","((()()))()()()()","((()()))()()(())","((()()))()(())()","((()()))()(()())","((()()))()((()))","((()()))(())()()","((()()))(())(())","((()()))(()())()","((()()))((()))()","((()()))(()()())","((()()))(()(()))","((()()))((())())","((()()))((()()))","((()()))(((())))","(((())))()()()()","(((())))()()(())","(((())))()(())()","(((())))()(()())","(((())))()((()))","(((())))(())()()","(((())))(())(())","(((())))(()())()","(((())))((()))()","(((())))(()()())","(((())))(()(()))","(((())))((())())","(((())))((()()))","(((())))(((())))","(()()()())()()()","(()()()())()(())","(()()()())(())()","(()()()())(()())","(()()()())((()))","(()()(()))()()()","(()()(()))()(())","(()()(()))(())()","(()()(()))(()())","(()()(()))((()))","(()(())())()()()","(()(())())()(())","(()(())())(())()","(()(())())(()())","(()(())())((()))","(()(()()))()()()","(()(()()))()(())","(()(()()))(())()","(()(()()))(()())","(()(()()))((()))","(()((())))()()()","(()((())))()(())","(()((())))(())()","(()((())))(()())","(()((())))((()))","((())()())()()()","((())()())()(())","((())()())(())()","((())()())(()())","((())()())((()))","((())(()))()()()","((())(()))()(())","((())(()))(())()","((())(()))(()())","((())(()))((()))","((()())())()()()","((()())())()(())","((()())())(())()","((()())())(()())","((()())())((()))","(((()))())()()()","(((()))())()(())","(((()))())(())()","(((()))())(()())","(((()))())((()))","((()()()))()()()","((()()()))()(())","((()()()))(())()","((()()()))(()())","((()()()))((()))","((()(())))()()()","((()(())))()(())","((()(())))(())()","((()(())))(()())","((()(())))((()))","(((())()))()()()","(((())()))()(())","(((())()))(())()","(((())()))(()())","(((())()))((()))","(((()())))()()()","(((()())))()(())","(((()())))(())()","(((()())))(()())","(((()())))((()))","((((()))))()()()","((((()))))()(())","((((()))))(())()","((((()))))(()())","((((()))))((()))","(()()()()())()()","(()()()()())(())","(()()()(()))()()","(()()()(()))(())","(()()(())())()()","(()()(())())(())","(()()(()()))()()","(()()(()()))(())","(()()((())))()()","(()()((())))(())","(()(())()())()()","(()(())()())(())","(()(())(()))()()","(()(())(()))(())","(()(()())())()()","(()(()())())(())","(()((()))())()()","(()((()))())(())","(()(()()()))()()","(()(()()()))(())","(()(()(())))()()","(()(()(())))(())","(()((())()))()()","(()((())()))(())","(()((()())))()()","(()((()())))(())","(()(((()))))()()","(()(((()))))(())","((())()()())()()","((())()()())(())","((())()(()))()()","((())()(()))(())","((())(())())()()","((())(())())(())","((())(()()))()()","((())(()()))(())","((())((())))()()","((())((())))(())","((()())()())()()","((()())()())(())","((()())(()))()()","((()())(()))(())","(((()))()())()()","(((()))()())(())","(((()))(()))()()","(((()))(()))(())","((()()())())()()","((()()())())(())","((()(()))())()()","((()(()))())(())","(((())())())()()","(((())())())(())","(((()()))())()()","(((()()))())(())","((((())))())()()","((((())))())(())","((()()()()))()()","((()()()()))(())","((()()(())))()()","((()()(())))(())","((()(())()))()()","((()(())()))(())","((()(()())))()()","((()(()())))(())","((()((()))))()()","((()((()))))(())","(((())()()))()()","(((())()()))(())","(((())(())))()()","(((())(())))(())","(((()())()))()()","(((()())()))(())","((((()))()))()()","((((()))()))(())","(((()()())))()()","(((()()())))(())","(((()(()))))()()","(((()(()))))(())","((((())())))()()","((((())())))(())","((((()()))))()()","((((()()))))(())","(((((())))))()()","(((((())))))(())","(()()()()()())()","(()()()()(()))()","(()()()(())())()","(()()()(()()))()","(()()()((())))()","(()()(())()())()","(()()(())(()))()","(()()(()())())()","(()()((()))())()","(()()(()()()))()","(()()(()(())))()","(()()((())()))()","(()()((()())))()","(()()(((()))))()","(()(())()()())()","(()(())()(()))()","(()(())(())())()","(()(())(()()))()","(()(())((())))()","(()(()())()())()","(()(()())(()))()","(()((()))()())()","(()((()))(()))()","(()(()()())())()","(()(()(()))())()","(()((())())())()","(()((()()))())()","(()(((())))())()","(()(()()()()))()","(()(()()(())))()","(()(()(())()))()","(()(()(()())))()","(()(()((()))))()","(()((())()()))()","(()((())(())))()","(()((()())()))()","(()(((()))()))()","(()((()()())))()","(()((()(()))))()","(()(((())())))()","(()(((()()))))()","(()((((())))))()","((())()()()())()","((())()()(()))()","((())()(())())()","((())()(()()))()","((())()((())))()","((())(())()())()","((())(())(()))()","((())(()())())()","((())((()))())()","((())(()()()))()","((())(()(())))()","((())((())()))()","((())((()())))()","((())(((()))))()","((()())()()())()","((()())()(()))()","((()())(())())()","((()())(()()))()","((()())((())))()","(((()))()()())()","(((()))()(()))()","(((()))(())())()","(((()))(()()))()","(((()))((())))()","((()()())()())()","((()()())(()))()","((()(()))()())()","((()(()))(()))()","(((())())()())()","(((())())(()))()","(((()()))()())()","(((()()))(()))()","((((())))()())()","((((())))(()))()","((()()()())())()","((()()(()))())()","((()(())())())()","((()(()()))())()","((()((())))())()","(((())()())())()","(((())(()))())()","(((()())())())()","((((()))())())()","(((()()()))())()","(((()(())))())()","((((())()))())()","((((()())))())()","(((((()))))())()","((()()()()()))()","((()()()(())))()","((()()(())()))()","((()()(()())))()","((()()((()))))()","((()(())()()))()","((()(())(())))()","((()(()())()))()","((()((()))()))()","((()(()()())))()","((()(()(()))))()","((()((())())))()","((()((()()))))()","((()(((())))))()","(((())()()()))()","(((())()(())))()","(((())(())()))()","(((())(()())))()","(((())((()))))()","(((()())()()))()","(((()())(())))()","((((()))()()))()","((((()))(())))()","(((()()())()))()","(((()(()))()))()","((((())())()))()","((((()()))()))()","(((((())))()))()","(((()()()())))()","(((()()(()))))()","(((()(())())))()","(((()(()()))))()","(((()((())))))()","((((())()())))()","((((())(()))))()","((((()())())))()","(((((()))())))()","((((()()()))))()","((((()(())))))()","(((((())()))))()","(((((()())))))()","((((((()))))))()","(()()()()()()())","(()()()()()(()))","(()()()()(())())","(()()()()(()()))","(()()()()((())))","(()()()(())()())","(()()()(())(()))","(()()()(()())())","(()()()((()))())","(()()()(()()()))","(()()()(()(())))","(()()()((())()))","(()()()((()())))","(()()()(((()))))","(()()(())()()())","(()()(())()(()))","(()()(())(())())","(()()(())(()()))","(()()(())((())))","(()()(()())()())","(()()(()())(()))","(()()((()))()())","(()()((()))(()))","(()()(()()())())","(()()(()(()))())","(()()((())())())","(()()((()()))())","(()()(((())))())","(()()(()()()()))","(()()(()()(())))","(()()(()(())()))","(()()(()(()())))","(()()(()((()))))","(()()((())()()))","(()()((())(())))","(()()((()())()))","(()()(((()))()))","(()()((()()())))","(()()((()(()))))","(()()(((())())))","(()()(((()()))))","(()()((((())))))","(()(())()()()())","(()(())()()(()))","(()(())()(())())","(()(())()(()()))","(()(())()((())))","(()(())(())()())","(()(())(())(()))","(()(())(()())())","(()(())((()))())","(()(())(()()()))","(()(())(()(())))","(()(())((())()))","(()(())((()())))","(()(())(((()))))","(()(()())()()())","(()(()())()(()))","(()(()())(())())","(()(()())(()()))","(()(()())((())))","(()((()))()()())","(()((()))()(()))","(()((()))(())())","(()((()))(()()))","(()((()))((())))","(()(()()())()())","(()(()()())(()))","(()(()(()))()())","(()(()(()))(()))","(()((())())()())","(()((())())(()))","(()((()()))()())","(()((()()))(()))","(()(((())))()())","(()(((())))(()))","(()(()()()())())","(()(()()(()))())","(()(()(())())())","(()(()(()()))())","(()(()((())))())","(()((())()())())","(()((())(()))())","(()((()())())())","(()(((()))())())","(()((()()()))())","(()((()(())))())","(()(((())()))())","(()(((()())))())","(()((((()))))())","(()(()()()()()))","(()(()()()(())))","(()(()()(())()))","(()(()()(()())))","(()(()()((()))))","(()(()(())()()))","(()(()(())(())))","(()(()(()())()))","(()(()((()))()))","(()(()(()()())))","(()(()(()(()))))","(()(()((())())))","(()(()((()()))))","(()(()(((())))))","(()((())()()()))","(()((())()(())))","(()((())(())()))","(()((())(()())))","(()((())((()))))","(()((()())()()))","(()((()())(())))","(()(((()))()()))","(()(((()))(())))","(()((()()())()))","(()((()(()))()))","(()(((())())()))","(()(((()()))()))","(()((((())))()))","(()((()()()())))","(()((()()(()))))","(()((()(())())))","(()((()(()()))))","(()((()((())))))","(()(((())()())))","(()(((())(()))))","(()(((()())())))","(()((((()))())))","(()(((()()()))))","(()(((()(())))))","(()((((())()))))","(()((((()())))))","(()(((((()))))))","((())()()()()())","((())()()()(()))","((())()()(())())","((())()()(()()))","((())()()((())))","((())()(())()())","((())()(())(()))","((())()(()())())","((())()((()))())","((())()(()()()))","((())()(()(())))","((())()((())()))","((())()((()())))","((())()(((()))))","((())(())()()())","((())(())()(()))","((())(())(())())","((())(())(()()))","((())(())((())))","((())(()())()())","((())(()())(()))","((())((()))()())","((())((()))(()))","((())(()()())())","((())(()(()))())","((())((())())())","((())((()()))())","((())(((())))())","((())(()()()()))","((())(()()(())))","((())(()(())()))","((())(()(()())))","((())(()((()))))","((())((())()()))","((())((())(())))","((())((()())()))","((())(((()))()))","((())((()()())))","((())((()(()))))","((())(((())())))","((())(((()()))))","((())((((())))))","((()())()()()())","((()())()()(()))","((()())()(())())","((()())()(()()))","((()())()((())))","((()())(())()())","((()())(())(()))","((()())(()())())","((()())((()))())","((()())(()()()))","((()())(()(())))","((()())((())()))","((()())((()())))","((()())(((()))))","(((()))()()()())","(((()))()()(()))","(((()))()(())())","(((()))()(()()))","(((()))()((())))","(((()))(())()())","(((()))(())(()))","(((()))(()())())","(((()))((()))())","(((()))(()()()))","(((()))(()(())))","(((()))((())()))","(((()))((()())))","(((()))(((()))))","((()()())()()())","((()()())()(()))","((()()())(())())","((()()())(()()))","((()()())((())))","((()(()))()()())","((()(()))()(()))","((()(()))(())())","((()(()))(()()))","((()(()))((())))","(((())())()()())","(((())())()(()))","(((())())(())())","(((())())(()()))","(((())())((())))","(((()()))()()())","(((()()))()(()))","(((()()))(())())","(((()()))(()()))","(((()()))((())))","((((())))()()())","((((())))()(()))","((((())))(())())","((((())))(()()))","((((())))((())))","((()()()())()())","((()()()())(()))","((()()(()))()())","((()()(()))(()))","((()(())())()())","((()(())())(()))","((()(()()))()())","((()(()()))(()))","((()((())))()())","((()((())))(()))","(((())()())()())","(((())()())(()))","(((())(()))()())","(((())(()))(()))","(((()())())()())","(((()())())(()))","((((()))())()())","((((()))())(()))","(((()()()))()())","(((()()()))(()))","(((()(())))()())","(((()(())))(()))","((((())()))()())","((((())()))(()))","((((()())))()())","((((()())))(()))","(((((()))))()())","(((((()))))(()))","((()()()()())())","((()()()(()))())","((()()(())())())","((()()(()()))())","((()()((())))())","((()(())()())())","((()(())(()))())","((()(()())())())","((()((()))())())","((()(()()()))())","((()(()(())))())","((()((())()))())","((()((()())))())","((()(((()))))())","(((())()()())())","(((())()(()))())","(((())(())())())","(((())(()()))())","(((())((())))())","(((()())()())())","(((()())(()))())","((((()))()())())","((((()))(()))())","(((()()())())())","(((()(()))())())","((((())())())())","((((()()))())())","(((((())))())())","(((()()()()))())","(((()()(())))())","(((()(())()))())","(((()(()())))())","(((()((()))))())","((((())()()))())","((((())(())))())","((((()())()))())","(((((()))()))())","((((()()())))())","((((()(()))))())","(((((())())))())","(((((()()))))())","((((((())))))())","((()()()()()()))","((()()()()(())))","((()()()(())()))","((()()()(()())))","((()()()((()))))","((()()(())()()))","((()()(())(())))","((()()(()())()))","((()()((()))()))","((()()(()()())))","((()()(()(()))))","((()()((())())))","((()()((()()))))","((()()(((())))))","((()(())()()()))","((()(())()(())))","((()(())(())()))","((()(())(()())))","((()(())((()))))","((()(()())()()))","((()(()())(())))","((()((()))()()))","((()((()))(())))","((()(()()())()))","((()(()(()))()))","((()((())())()))","((()((()()))()))","((()(((())))()))","((()(()()()())))","((()(()()(()))))","((()(()(())())))","((()(()(()()))))","((()(()((())))))","((()((())()())))","((()((())(()))))","((()((()())())))","((()(((()))())))","((()((()()()))))","((()((()(())))))","((()(((())()))))","((()(((()())))))","((()((((()))))))","(((())()()()()))","(((())()()(())))","(((())()(())()))","(((())()(()())))","(((())()((()))))","(((())(())()()))","(((())(())(())))","(((())(()())()))","(((())((()))()))","(((())(()()())))","(((())(()(()))))","(((())((())())))","(((())((()()))))","(((())(((())))))","(((()())()()()))","(((()())()(())))","(((()())(())()))","(((()())(()())))","(((()())((()))))","((((()))()()()))","((((()))()(())))","((((()))(())()))","((((()))(()())))","((((()))((()))))","(((()()())()()))","(((()()())(())))","(((()(()))()()))","(((()(()))(())))","((((())())()()))","((((())())(())))","((((()()))()()))","((((()()))(())))","(((((())))()()))","(((((())))(())))","(((()()()())()))","(((()()(()))()))","(((()(())())()))","(((()(()()))()))","(((()((())))()))","((((())()())()))","((((())(()))()))","((((()())())()))","(((((()))())()))","((((()()()))()))","((((()(())))()))","(((((())()))()))","(((((()())))()))","((((((()))))()))","(((()()()()())))","(((()()()(()))))","(((()()(())())))","(((()()(()()))))","(((()()((())))))","(((()(())()())))","(((()(())(()))))","(((()(()())())))","(((()((()))())))","(((()(()()()))))","(((()(()(())))))","(((()((())()))))","(((()((()())))))","(((()(((()))))))","((((())()()())))","((((())()(()))))","((((())(())())))","((((())(()()))))","((((())((())))))","((((()())()())))","((((()())(()))))","(((((()))()())))","(((((()))(()))))","((((()()())())))","((((()(()))())))","(((((())())())))","(((((()()))())))","((((((())))())))","((((()()()()))))","((((()()(())))))","((((()(())()))))","((((()(()())))))","((((()((()))))))","(((((())()()))))","(((((())(())))))","(((((()())()))))","((((((()))()))))","(((((()()())))))","(((((()(()))))))","((((((())())))))","((((((()()))))))","(((((((())))))))"};
default:return {};
}
}
};