자바스크립트

[JavaScript] 프로그래머 등차수열의 특정한 항만 더하기

코딩하는둥이 2024. 4. 15. 18:26

문제 설명

정수가 담긴 리스트 num_list가 주어질 때, 모든 원소들의 곱이 모든 원소들의 합의 제곱보다 작으면 1을 크면 0을 return하도록 solution 함수를 완성해주세요.

 

입출력 예

num_list result
[3, 4, 5, 2, 1] 1
[5, 7, 8, 3] 0

 

코드

const solution = (num_list) => {
    const totalSum = num_list.reduce((acc, cur) => acc + cur)
    return num_list.reduce((acc, cur) => acc * cur) < totalSum * totalSum ? 1: 0
}
 

 

풀이

1) reduce를 사용히여 num_list에 모든 원소들를 더해서 총합 구한다.

2) reduce를 사용하여 모든 원소의 곱을 계산한 후 삼항연산자를 사용하여 모든 원소의 곱이 totalSum의 제곱보다 작은 지 비교한 후 참이면 1 거짓이면 0을 반환한다.