Three Divisors
EasyMathEnumerationNumber Theory
Solution
export function isThree(n: number): boolean {
function isSquare(n: number) {
const sqrt = Math.floor(Math.sqrt(n));
return sqrt ** 2 === n;
}
function isPrime(n: number) {
for (let i = 2; i <= Math.sqrt(n); i++) {
if (n % i === 0) {
return false;
}
}
return true;
}
return 4 <= n && isSquare(n) && isPrime(Math.sqrt(n));
}