[프로그래머스#JS] 짝지어 제거하기

dongwon·2021년 4월 27일
0

문제

짝지어 제거하기 https://programmers.co.kr/learn/courses/30/lessons/12973

해결

  1. 전체 배열 탐색 -> 시간 초과
  2. 스택을 이용해 바로 바로 삭제
    1-1. 스택길이 체크하여 예외 처리하기

코드

function solution(s) {
  s = s.split("");
  const stack = [];

  s.forEach((v, index) => {
    stack.push(v);

    if (stack.length >= 2) {
      if (stack[stack.length - 2] === stack[stack.length - 1]) {
        stack.pop();
        stack.pop();
      }
    }
  });

  return stack.length === 0 ? 1 : 0;
}
profile
데이원컴퍼니 프론트엔드 개발자입니다.

0개의 댓글