본문 바로가기
  • 개발 / 공부 / 일상
Programmers

(Programmers) [Lv. 2] 짝지어 제거하기

by JJeongHyun 2023. 2. 10.
반응형

문제 설명

  • 문자열 S를 매개변수로 넘겨받는다
  • 짝지어 제거하기는 같은 알파벳 2개 붙어 있으면 제거하고 앞뒤 문자열을 이어 붙이는 작업을 이야기한다
  • 이 작업을 반복하여 모든 문자열을 제거한다면 성공적으로 수행했다고 정의한다
  • 매개변수로 받은 문자열을 짝지어 제거하기를 성공적으로 수행했는지 안 했는지 결과를 반환하는 solution 함수를 완성하시오
  • 예를 들면
    • S = "baabaa" 
    • => bbaa => aa > ""
    • 모두 제거했으니 1을 반환한다

 

제한사항

  • 문자열의 길이 : 1,000,000 이하의 자연수
  • 문자열은 모두 소문자로 이루어져 있습니다

 

입출력 예시

짝지어 제거하기 입출력 예시

 

전체 코드

function solution(s) {
  let answer = [];
  let tempStr = s.split("");
  for (let i = 0; i < tempStr.length; i++) {
    if (answer[answer.length - 1] === s[i]) {
      answer.pop();
      continue;
    }
    answer.push(s[i]);
  }
  return !answer.length ? 1 : 0;
}