🗃️javascript/프로그래머스
길이에 따른 연산(LV.0)[reduce((현재값, 누적공간, 인덱스)=> 식, 초기값)]
하얀성
2023. 6. 10. 14:55
<문제>
정수가 담긴 리스트 num_list가 주어질 때, 리스트의 길이가 11 이상이면 리스트에 있는 모든 원소의 합을 10 이하이면 모든 원소의 곱을 return하도록 solution 함수를 완성해주세요.
제한사항
- 2 ≤ num_list의 길이 ≤ 20
- 1 ≤ num_list의 원소 ≤ 9
입출력 예num_listresult
[3, 4, 5, 2, 5, 4, 6, 7, 3, 7, 2, 2, 1] | 51 |
[2, 3, 4, 5] | 120 |
입출력 예 설명
입출력 예 #1
- 리스트의 길이가 13이므로 모든 원소의 합인 51을 return합니다.
입출력 예 #2
- 리스트의 길이가 4이므로 모든 원소의 곱인 120을 return합니다.
<제출답안>
function solution(num_list) {
let answer = num_list.length >= 11 ? num_list.reduce((x,a)=> a += x,0)
: num_list.reduce((x,a)=> a *=x);
return answer;
}
reduce((a,c) 식,초기값) 을 통해서 값을 구함.