Javascript/자바스크립트 문제

[Javascript : programmers] 원소들의 곱과 합 (Lv.0)

isfp_yykkng 2024. 8. 2. 12:09

[Javascript : programmers] 원소들의 곱과 합 (Lv.0)

문제

나의 정답 풀이

function solution(num_list) {
    const sum = num_list.reduce((acc, cur)=> acc+=cur, 0);
    const multi = num_list.reduce((acc, cur)=> acc*=cur, 1);
    return sum**2 > multi ? 1 : 0
}

reduce 메서드를 이용하여 num_list를 순회하면서 각 원소들을 더하고 곱한다. 그리고 이 합의 제곱값과 곱을 비교한다.

새로 배운 풀이

function solution(num_list) {
    let accMul = 1
    let accSum = 0
    for (const num of num_list) {
        accMul *= num
        accSum += num
    }
    return accMul < accSum ** 2 ? 1 : 0
}

 

reduce 메서드가 아니라 for문을 활용하여 한번에 합과 곱을 구한 후 같은 방식으로 비교하여 반환한다.

학습 내용 ⭐

  • for ... of  반복문 : 반복 가능한 객체 (Array, map, set, string, typedArray, arguments 객체 등) 에서 사용할 수 있고 각 원소들을 순회한다.