
코드
function solution(n) {
let count = 0;
for (let i = 1; i <= n; i++) {
if (isPrime(i)) count++;
}
return count;
}
function isPrime(num) {
if (num <= 1) {
return false;
}
//짝수중 2는 유일한 소수
if (num % 2 === 0) {
return num === 2 ? true : false;
}
const sqrt = parseInt(Math.sqrt(num));
for (let i = 3; i <= sqrt; i += 2) {
if (num % i === 0) {
return false;
}
}
return true;
}
에라토스테네스의 체로 판별했다
'코딩 테스트 > 프로그래머스 level1' 카테고리의 다른 글
| 자릿수 더하기 (0) | 2022.09.07 |
|---|---|
| 정수 제곱근 판별 (0) | 2022.09.07 |
| 최대공약수와 최소공배수 (0) | 2022.09.07 |
| 같은 숫자는 싫어 (0) | 2022.09.07 |
| 자연수 뒤집어 배열로 만들기 (0) | 2022.09.07 |