✏️기록하는 즐거움
article thumbnail

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

 

|  제출

function solution(absolutes, signs) {
   return absolutes.reduce((acc, val, index) => acc + (val * (signs[index] ? 1 : -1)), 0);
}

 

|  풀이과정

reduce 함수는 처리할 요소의 인덱스를 인자로 가지고 있다.

absolutes[0]의 부호는 signs[0]에, absolutes[1]의 부호는 signs[1]에 담겨져 있으므로 absolutes의 배열 요소와 해당하는 인덱스를 가지고 있는 signs 요소를 곱해서 더해주면 된다.

 

|  개념

Array.prototype.reduce()

 arr.reduce(callback[, initialValue])
  • 배열의 각 요소에 대해 주어진 reducer 함수를 실행한 결과값을 반환한다.
  • 매개변수는 다음과 같다.
    • 콜백함수
      • 누산기
      • 현재 처리할 값
      • 처리할 값의 인덱스, 초기값을 제공할 경우 0부터 그렇지 않을 경우 1부터 시작한다. (optional)
      • 처리할 값의 원본 배열 (optional)
    • 초기값 (optional)
      • 지정하지 않으면 배열의 첫 번째 요소를 초기값으로 사용한다.

 

profile

✏️기록하는 즐거움

@nor_coding

포스팅이 좋았다면 "좋아요❤️" 또는 "구독👍🏻" 해주세요!