해말그미의 코딩공부

최댓값 만들기 (2) 본문

Programmers

최댓값 만들기 (2)

해말그미 2024. 9. 10. 14:45

 

🌹 오답

function solution(numbers) {
  numbers.map(i => Math.abs(i));
    numbers.sort((a,b)=>b-a);
    return numbers[0] * numbers[1];
}
//반복문으로 돌면서 음수를 양수로 바꿔준다. [1,2,3,4,5]
//배열 안에서 큰순으로 정렬한다. [5,4,3,2,1]
//첫번째 두번째를 곱한다.

이렇게 하면 

테스트 1번과 같은 상황이 발생한다.

 

🌹 풀이 

 

음수는 어떻게 처리해야 할지 고민이 됐다.

오름차순, 내림차순을 하면 양수와 음수가 한쪽으로 모이니까

numbers.sort((a, b) => b- a); 하면

[4,2,1,-3,-5] 이렇게 되고

큰수끼리, 작은 수끼리 곱하고 비교한다. 

 

🌹 코드

function solution(numbers) {
    numbers.sort((a, b) => b - a);
    return Math.max(numbers[0] * numbers[1], numbers[numbers.length-1] * numbers[numbers.length-2]);
}

 

'Programmers' 카테고리의 다른 글

외계행성의 나이  (0) 2024.10.17
약수 구하기  (0) 2024.09.17
주사위의 개수  (0) 2024.09.12
배열 회전 시키기  (0) 2024.09.08
Comments