forof로 하니까 프로그래머스에서 올바른 괄호 문제가 효율성 이슈가 발생하여 제 나름대로 풀어봤는데 리뷰 부탁드리겠습니당
<script>
function solution(s) {
let stack = [];
let cnt = 0;
for (let i = 0; i < s.length; i++) {
if(s[i] === '(') cnt++;
else if(s[i] === ')') cnt--;
if(cnt < 0) return false;
if(cnt === 0 && s[i] !== ')') stack.push(s[i])
}
return stack.join('');
}
let str = "(A(BC)D)EF(G(H)(IJ)K)LM(N)";
console.log(solution(str));
</script>