본문 바로가기

Coding Test/Programmers

[프로그래머스/JavaScript] 코딩 테스트 풀이 (문제 128 - 원소들의 곱과 합)

728x90

 

# 문제

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



# 답안

// 1. 입력: 정수 배열 num_list
// 2. 출력: (모든 원소들의 곱 < 모든 원수들의 합의 제곱) ? 1 : 0

function solution(num_list) {
    let multi = 1; 
    let plus = 0;
   
    for (let i = 0; i < num_list.length; i++){
       multi *= num_list[i]
       plus += num_list[i]
    }
    
    let square = plus*plus;
    
    return (multi < square) ? 1 : 0;
}



// 지수 연산자 **를 사용한 예시

function solution(num_list) {
    let multi = 1; 
    let plus = 0;
   
    for (let i = 0; i < num_list.length; i++) {
       multi *= num_list[i];
       plus += num_list[i];
    }
    
    let square = plus ** 2;
    
    return (multi < square) ? 1 : 0;
}



# 인사이트 

// 지수 연산자는 숫자의 거듭제곱을 계산할 때 사용되는 연산자이다.
// a의 b제곱은 a ** b

// let base = 2;
// let exponent = 3;
// let result = base ** exponent; // 2의 3제곱 = 8
// console.log(result); // 출력: 8
728x90