괄호 회전하기 https://programmers.co.kr/learn/courses/30/lessons/76502
스택을 이용하기 때문에 O(n), 배열의 길이만큼 탐색해야 하기 때문에 총 O(n^2)입니다.
배열의 최대 길이가 1000 이기 때문에 완전탐색을 이용해 해결했습니다.
function solution(s) {
s = s.split("");
let tc = s.length - 1;
let answer = 0;
while (tc--) {
const stack = [];
for (let i = 0; i < s.length; i++) {
stack.push(s[i]);
if (
(stack[stack.length - 2] === "(" && stack[stack.length - 1] === ")") ||
(stack[stack.length - 2] === "{" && stack[stack.length - 1] === "}") ||
(stack[stack.length - 2] === "[" && stack[stack.length - 1] === "]")
) {
stack.pop();
stack.pop();
}
}
if (stack.length === 0) answer++;
const temp = s.shift();
s.push(temp);
}
return answer;
}