JavaScript/Coding_Problems

프로그래머스(입문)_최댓값 만들기 (1)

yunajoe 2022. 12. 9. 08:55
function solution(numbers) {
    var answer = 0;
    var max_num = Math.max.apply(null, numbers);
    numbers.forEach((item, index, numbers) => {
        if(item !== max_num){
            let nums = item*max_num;
            if(answer < nums){
                answer = nums;                  
            }  
        }          
    })
    return answer
}

테스트4, 틀림. 이유는  Array = [1,1,2,3,4,5,5] 가 이면은 max값을 제외하고 배열을 순회하기 때문이다. max값이랑 같은 값이 있을경우에는 틀린다. 

 

function solution(numbers) {
    var answer = 0;
    var max_num = Math.max.apply(null, numbers);
    var max_num_index = numbers.indexOf(max_num)
    numbers.forEach((item, index, numbers) =>{
        if(max_num_index !== index){              
            let num = item * max_num; 
            if(answer < num){
                answer = num; 
            }              
        }       
    })
    return answer      
}