코딩 테스트/프로그래머스 level1

소수 찾기

fullfish 2022. 9. 7. 18:23

코드

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