순서쌍이란 두 개의 숫자를 순서를 정하여 짝지어 나타낸 쌍으로 (a, b)로 표기합니다. 자연수 n이 매개변수로 주어질 때 두 숫자의 곱이 n인 자연수 순서쌍의 개수를 return하도록 solution 함수를 완성해주세요.
n | result |
---|---|
20 | 6 |
100 | 9 |
약수의 개수 = 순서쌍의 개수
function solution(n) {
let arr = [];
for (let i = 0; i <= n; i++) {
if (n % i == 0) {
arr.push(i);
}
}
return arr.length;
}
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;
}
function solution(n) {
// n이 매개변수로 주어질때 곱이 n
// for문으로 구할 때
// let cnt = 0;
// for(let i = 1; i<=n; i++){
// if (n % i === 0) {
// cnt++;
// }
// }
// return cnt;
// for문으로 안구할 때
return Array(n).fill(1).map((v,idx) => v + idx).filter(v => n % v === 0).length
}