22. Generate Parentheses
모든 쌍을 다 찾아야 하므로, dfs를 진행했다. 여는괄호, 닫는 괄호가 둘다 0이 되었을 때, 배열에 푸쉬를 해주었고, 오른쪽 괄호의 개수가 더 작다면 무조건 리턴조건, 왼쪽 괄호의 개수가 0보다 작다면 무조건 리턴 조건에 포함된다. 따라서 풀이는 아래와 같다. const generateParenthesis = function(n) { let res = []; const dfs = (str, left, right) => { if(left === 0 && right === 0) { res.push(str); return; } if(right < left || left < 0) return dfs(str+"(", left - 1, right) dfs(str+")", left, right - 1) } dfs..