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개의 인자를 가진다.
- 누산기 (acc)
- 현재 값 (cur)
- 현재 인덱스 (idx)
- 원본 배열 (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 |