Algorithm.

자바스크립트 배열 누적값 더하기

챙v 2025. 3. 3. 10:33
728x90
반응형

등차수열 특정한 항만 더하기

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

 

프로그래머스

SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프

programmers.co.kr

 

for문으나 If문을 사용할 수도 있지만 해당 문제는 reduce메서드를 활용하면 간단하게 풀 수 있다. 인수로 받은 included 배열에 true인 익덱스에만 해당 인덱스값에 맞는 등차수열을 더해 출력하는 문제이다. reduce는 callback함수를 받아 실행해 누적값을 return하는 메서드이다.

Arr.reduce(callback[, initialValue])

 

reduce 메서드는 4개의 인자를 가진다.

  1. 누산기 (acc)
  2. 현재 값 (cur)
  3. 현재 인덱스 (idx)
  4. 원본 배열 (src)

callback 부분에는 해당 인덱스[i]값이 true일 경우 [i+1]번째 항에 등차수열을 담아 더하고 false일 경우 기존 누산기를 return하는 함수를 작성하였다.

function solution(a, d, included) {
    var answer = included.reduce((acc, curr, i) => included[i] ? acc + a + (d * i) : acc , 0);
    return answer;
};
728x90
반응형

'Algorithm.' 카테고리의 다른 글

JS 프로그래머스 코드 출력하기  (0) 2025.02.27
그래프  (4) 2024.08.25
[코테 합격자되기 Js] 문제 16 기능 개발  (0) 2024.08.14
[코테 합격자되기 Js] 문제 17 카드뭉치  (0) 2024.08.14
알고리즘 개념 , 큐  (0) 2024.08.13