https://programmers.co.kr/learn/courses/30/lessons/76502
function solution(s) {
let cnt=0;
s=s.split('');
for(let i=0; i<s.length; i++){
let tmp=s.shift();
s.push(tmp);
let stack=[];
for(let l=0; l<s.length; l++){
if(s[l]==='(' || s[l]==='[' || s[l]==='{'){
stack.push(s[l]);
}
else if(s[l]===')'){
if(stack.length===0){
stack.push(0); //break된 후, cnt++이 되는 것을 막음
break;
}
else if(stack[stack.length-1]==='(') stack.pop();
}
else if(s[l]===']'){
if(stack.length===0){
stack.push(0);
break;
}
else if(stack[stack.length-1]=='[') stack.pop();
}
else if(s[l]==='}'){
if(stack.length===0){
stack.push(0);
break;
}
else if(stack[stack.length-1]=='{') stack.pop();
}
}
if(!stack.length) cnt++;
}
return cnt;
}
예전에 괄호 변환 문제를 푼 경험이 있어서, 생각보다 쉽게 풀린문제! 시간초과 되지 않을까 조마조마 했는데 다행히 정답!
응용할 수 있는 능력을 가졌다!👏🏻