[프로그래머스] 괄호 회전하기

dev_jo·2022년 9월 3일
0

알고리즘 풀이

목록 보기
21/25
post-custom-banner

문제

괄호 회전하기



문제풀이

function checkBracket (arr) {
    var stack = arr.slice();
    var bracketStack = [];
    var bool = false;
    if (stack.length % 2 == 1) return false; // 괄호 갯수가 홀수면 false 리턴
    else {
        while (stack.length != 0) {
            var popElement = stack.pop();
            if (popElement == ')' || popElement == '}' || popElement == ']' ) {
                bracketStack.push(popElement);
            }
            else if (popElement == '(' || popElement == '{' || popElement == '[' ) {
                var popBracket = bracketStack.pop();
                var comb = popElement + popBracket;
                if (! (comb == '()' || comb == '{}' || comb == '[]') ) {
                    return false;
                }
             
            }
        }
    }   
    if (bracketStack.length == 0) return true;
    else return false;
}


function solution(s) {
    var answer = 0;
    var sArr = [...s];
    for (var i = 0; i < sArr.length; i++) {
        var bool = checkBracket(sArr);
        if (bool) answer++;
        sArr.push(sArr.shift());
    }
    
    return answer;
}
profile
To be a better developer!!
post-custom-banner

0개의 댓글