[프로그래머스 Lv2]올바른 괄호

초록귤·2024년 5월 18일
0

JS코테

목록 보기
8/9

내풀이

function solution(s){
    let left = 0;
    let right = 0;
    // 2번째로 추가
    if(s.length %2 !==0) return false
    for(i=0; i<s.length; i++){
        if(s[i]==='(') left ++;
        else right ++
        if(right > left){ return false}
    }
    if(left===right) return true
    else return false
}
내풀이(1)-좌우비교내풀이(2)-%2!==0 추가다른방법-음수면 false
시간

다른 방법

function solution(s){
   let cum = 0
   for (let paren of s) {
       cum += paren === '('? 1: -1
       if(cum < 0) {
           return false
       }
   }
   return cum === 0? true: false;
}

결론

cum으로 합산해서 푸는 방식이 더 효율이 좋은 것 같다.
다른 풀이에서 적용해보아야겠다!

profile
초록색 귤이 노랑색으로 익어가듯, 실력이 익어가기 위해 노력하는 개발자 lahee입니다. 프론트엔드 개발자를 목표로 성장하고 있습니다.

0개의 댓글