728x90
let input = require("fs").readFileSync("example.txt").toString().split("\n");
const count = +input[0];
const arr = input[1].split(" ").sort((a, b) => a - b);
const firstNumber = +arr[0];
const lastNumber = +arr[count - 1];
let result = 0;
arr.length >= 2
? (result = firstNumber * lastNumber)
: (result = firstNumber * firstNumber);
console.log(result);
처음에는 생각없이 for문으로 풀어보려고 애를 썼는데 생각해보니까.... 굳이 그럴 필요도 없었다.
약수의 의미 자체가 약수의 곱이 곧 답인!!
그래서 처음과 끝의 수를 곱하는 코드를 짰는데
약수가 1개인 경우도 있을수 있기 때문에
삼항연산자를 사용해서
약수가 2개이상인 경우에는 첫번째 약수와 가장 마지막 약수를 곱하고
아닌 경우에는 같은 약수를 곱하는 식으로 해결 했다~!
728x90
'알고리즘 문제' 카테고리의 다른 글
알고리즘 문제 js 56 - 올바른 괄호 (0) | 2022.03.28 |
---|---|
알고리즘 문제 js 55 - 가장 큰 수 (0) | 2022.03.17 |
알고리즘 문제 js 54- 더하기 사이클 (백준1110) (0) | 2022.03.03 |
알고리즘 문제 js 53- 소수구하기 (백준1929) (0) | 2022.03.03 |
알고리즘 문제 js 52- ACM 호텔 (백준10250) (0) | 2022.03.03 |