레쭈고 JS

코딩 테스트 - 58

정땅미 2025. 1. 21. 21:55

오늘 푼 문제는요~

 

이 문제입니닷!

사실 이 문제는 옛날부터 손만 대고 한 번도 못 풀었던 문제인데요.....

친구가 이걸 풀어서 어제 친구 코드를 보고 이해한 다음에 오늘 풀어보았던 문제입니닷.

스택 또는 큐를 이용해야 한다고 했는데 어떻게 이용해야 하는지 감이 전혀 안 왔지만 친구 코드를 보니 아하! 했습니다.

function solution(s){
    var answer = [];

    for(let i of s) {
        if(i === '(') answer.push(i);
        else {
            if(answer.length === 0) return false
            answer.pop();
        }
    }
    
    if(answer.length != 0) return false

    return true;
}

 

우선 answer 를 배열로 지정해주고 s 를 돈 다음 여는 괄호면 이걸 answer 배열에 넣어줬어여!

근데 만약 열린 괄호가 먼저 안 들어가서 길이가 0이다. 그럼 당연히 형식에 올바르지 않으므로 바로 false 를 리턴해 줍니다.

만약 열린 괄호가 있다면 그걸 다시 빼 와요! 이런 식으로 코드를 돌리면 올바른 괄호일 경우는 true 가 딱 나옵니다.

그럴 때 true 를 return 해 주면 돼요!

 

오늘의 코테도 끗~!

'레쭈고 JS' 카테고리의 다른 글

JS - 3  (0) 2024.03.04
JS - 2  (0) 2024.02.26
JS - 1  (0) 2024.02.24