알고리즘 - 괄호 회전하기

HoJeong Im·2021년 9월 16일
0

Break_Algo

목록 보기
1/46

문제

  • 링크

  • 괄호 회전하기 문제

  • 정확성만 오직 고려하면 되는 문제

코드

function solution(s) {
    let answer = 0;
    
    let count = 0;
    let finish = s.length;
    
    let arr = s.split("");
    
    for(; count < finish ; count++){
        
        let test = [];
        for(let count2 = 0 ; count2 < finish ; count2++){
            if(arr[count2] === "[" || 
              arr[count2] === "(" || 
              arr[count2] === "{"){
                test.push(arr[count2]);
            }
            else if(arr[count2] === ")" || 
              arr[count2] === "}" || 
              arr[count2] === "]"){
                if(test[test.length-1] === "["
                  && arr[count2] === "]"){
                    test.pop();
                }
                else if(test[test.length-1] === "{"
                  && arr[count2] === "}"){
                    test.pop();
                }
                else if(test[test.length-1] === "("
                  && arr[count2] === ")"){
                    test.pop();
                }
                else{
                    test.push(arr[count2]);
                }
            }
        }
        
        if(test.length === 0){
            answer++;    
        }
        
        
        // 추가
        arr.unshift(arr.pop());
    }

    return answer;
}

회고

  • 다른 코드를 찾아서 읽어보는 습관을 들이자

  • '잘하는 사람은 어떻게 풀었을까?'

profile
꾸준함이 제일 빠른 길이었다

0개의 댓글