프로그래머스 LEVEL 1(같은 숫자는 싫어)

image

  • 사용 언어 : javascript

  • 해결 날짜 : 2022-08-17

  • 해결 방법 :

    • reduce() 함수 사용해보기
    • 첫번째 값은 중복이 없으므로 배열에 담아 반환
    • 현재까지 추가된 배열의 마지막 값(이전 인덱스 값)과 현재 인덱스의 값을 비교하여 다를때만 push()
  • 코드

  function solution(arr) {
      const answer = arr.reduce((acc, cur, idx) => {
          const length = acc.length;
          if(length === 0) return [cur];
          if(acc[length - 1] !== arr[idx]) acc.push(arr[idx]);
          return acc;
      }, []);
      
      return answer;
  }