Development/알고리즘
[프로그래머스 | Javascript] Lv.2 올바른 괄호
레오나르도 다빈츠
2024. 1. 8. 23:11
💬 문제 설명
https://school.programmers.co.kr/learn/courses/30/lessons/12909
🗝 내가 푼 코드
stack을 사용해서 풀었다. 효율성 검사 잘 통과 ,, 👍🏻
이건 알고리즘 책에서 스택에 대한 예제로 본 적이 있는 방법이었다.
function solution(text){
const result = []
let answer = true
text.split('').map((obj) => {
if (obj === '(') {
result.push(obj)
} else {
if (result.length === 0) answer = false
result.pop()
}
})
return result.length === 0 && answer
}
2트는 다른 사람의 풀이를 봤는데 숫자를 빼고 더하는 형태로 풀어서 적용해봤다.
function solution(text){
let answer = 0
let result = true
text.split('').map((obj) => {
if (obj === '(') {
answer++
} else {
answer--
if (answer < 0) return result = false
}
})
return answer === 0 && result
}