728x90
largestProductOfThree
문제
정수를 요소로 갖는 배열을 입력받아 3개의 요소를 곱해 나올 수 있는 최대값을 리턴해야 합니다.
입력
let output = largestProductOfThree([2, 1, 3, 7]);
console.log(output); // --> 42 (= 2 * 3 * 7)
output = largestProductOfThree([-1, 2, -5, 7]);
console.log(output); // --> 35 (= -1 * -5 * 7)
const largestProductOfThree = function (arr) {
// TODO: 여기에 코드를 작성합니다.
// 첫번째수가 양수 두번째부터는 음수 <- 맨앞 * 맨뒤에서
// 첫번째 양수보다 맨 뒤 음수 둘이 더 크면 <- 맨앞 * 맨뒤에서 둘
if(arr[0] > 0 && arr[1] < 0) {
return arr[0] * arr[arr.length-1] * arr[arr.length-2];
}if(arr[0] > 0 && arr[arr.length-2] < 0 && Math.abs(arr[0]) < Math.abs(arr[arr.length-2])) {
return arr[0] * arr[arr.length-1] * arr[arr.length-2];
}return arr[0] * arr[1] * arr[2];
};
728x90
'코플릿 > toyproblem' 카테고리의 다른 글
toy problem 10 (0) | 2021.10.28 |
---|---|
toy problem 11 (0) | 2021.10.28 |
toy problem 07 (0) | 2021.10.28 |
toy problem 06 (0) | 2021.10.28 |
toy problem 05 (0) | 2021.10.28 |