프로그래머스[LEVEL0] 원소들의 곱과 합 JavaScript

강동욱·2024년 9월 10일
0

프로그래머스

목록 보기
29/33

문제

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

제한사항

2 ≤ num_list의 길이 ≤ 10
1 ≤ num_list의 원소 ≤ 9

입출력 예

num_listresult
[3, 4, 5, 2, 1]1
[5, 7, 8, 3]0

풀이

일단 변수 2개를 만들어서 하나는 모든 요소의 곱을 저장하고
하나는 모든요소의 합만 저장해야겠다. 합의 제곱은 나중에 값 비교할때 계산해줘야겠다.

function solution(num_list) {
    let answer = 0;
    let multiple = 1;
    let sum = 0;
    num_list.forEach((item) => {
        multiple *= item;
        sum += item
    answer = multiple > sum**2 ? 0 : 1
    });
return answer;
}

모든 요소의 곱을 저장하는 muliple은 1로 초기값을 설정해주고 합인 sum은 0으로 설정해주었다.
그 후 forEach를 사용해서 각 요소들에 대해 콜백함수를 진행하고
마지막으로 삼항연산자를 통해 값을 비교 후 answer에 저장 및 리턴해주었다. 제곱 표현으로 ** 를 사용하였다.
통과!

profile
고군분투 퍼블리셔

0개의 댓글

관련 채용 정보