function solution(n) {
let count = 0
for (let i=n; i>=1; i--) {
// for (let i=1; i<=n; i++) {
if (n % i === 0) {
count ++
}
}
return count
}
function solution(n) {
let count = 0;
for (let i = 1; i < Math.sqrt(n); i++) {
if (n % i === 0) count += 2;
}
if (n % Math.sqrt(n) === 0) count += 1;
return count;
}
function solution(n) {
let ans = 0;
for (let i = 1; i < Math.sqrt(n); i++)
if (n%i === 0) ans+=2;
return Number.isInteger(Math.sqrt(n)) ? ans+1 : ans;
}
- 루트(square root) : Math.sqrt(n) 루트값 반환. 매개변수가 음수이면 NaN
- 제곱(power) : Math.pow(base, exponent)
나의 풀이는 비효율적. 입력값이 커지면 그만큼 반복 횟수가 기하급수적으로 늘어나기 때문.
for문에서 제곱근 처리를 했기 때문에 하나의 약수가 발견될 때마다 +2를 한다.. 는데 이해X
제곱근이 정수로 딱 떨어지면 +1을, 아니라면 그대로 ans를 리턴