문제풀이/자료구조

[Javascript/자바스크립트] 프로그래머스 짝지어 제거하기

딜레이레이 2025. 3. 21. 20:59

https://school.programmers.co.kr/learn/courses/30/lessons/12973?language=javascript

코드

function solution(s) {
  const stack = [];
  for (const ch of s) {
    if (stack.length > 0 && ch === stack[stack.length - 1]) {
      stack.pop();
    } else {
      stack.push(ch);
    }
    console.log(stack);
  }
  return stack.length === 0 ? 1 : 0;
}

 

처음에는 배열의 마지막 요소에 접근할 때 파이썬처럼 stack[-1]처럼 했다가 틀렸다....

찾아보니 자바스크립트는 길이-1로 접근하거나 아예 pop()해서 접근하는 것 같다. 근데 여기서는 pop()을 하면 같지 않을 때 다시 push해줘야 하므로 그냥 길이-1로 접근하는 방법을 사용했다.