반응형
문제
https://school.programmers.co.kr/learn/courses/30/lessons/12909?language=javascript
풀이
이전에는 큐로 풀었었는데 카카오 문제 풀고 나서 다른 방법도 알게 되었다.
'('면 1, ')' 면 -1을 더해서 음수가 되는 경우 올바른 괄호가 아니라고 판단한다.
그리고 모두 더했을 때 0이거나 양수인데, 이때 0이면 올바른 괄호이므로 true를, 아니면 (가 더 많은 경우로 false를 반환한다.
function solution(s){
let sum = 0
for (let ch of s) {
sum += ch === '(' ? 1 : -1
if (sum < 0) return false
}
return sum === 0
}
반응형
'Algorithm > Programmers' 카테고리의 다른 글
[알고리즘/프로그래머스/고득점Kit] 해시(JS)브라운 먹고싶다/..(폰켓몬, 완주하지 못한 선수, 의상, 전화번호 목록, 베스트 앨범) (0) | 2023.09.13 |
---|---|
[알고리즘/프로그래머스/고득점 Kit] 프로세스(JS) (0) | 2023.09.09 |
[알고리즘/프로그래머스/고득점Kit] 기능개발(JS) (1) | 2023.09.09 |
[알고리즘/프로그래머스/카카오] 메뉴 리뉴얼(JS) (0) | 2023.08.31 |
[알고리즘/프로그래머스/카카오] 두 큐 합 같게 만들기(JS, 투포인터) (0) | 2023.08.30 |