프로그래머스 Lv.1 소수 찾기
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 | function isPrime(x) { for (let i = 2; i <= Math.sqrt(x); i++) { if (x % i === 0) return false; } return true; } function solution(n) { let result = 0; for(let i = 2; i <= n; i++) { if(isPrime(i)) { result++; } } return result; } | cs |
소수를 판별하는 함수
isPrime
을 따로 만들어준다.메인 함수에서 2부터
n
까지 반복하면서isPrime
을 통해 true이면result
에 1을 더해준다.
소수를 찾는 함수는 구글에서 검색해서 찾았다.
내가 먼저 짠 코드는 효율성 검사를 통과하지 못했다.
에라토스테네스의 체를 이용해서 풀면 효율성 검사를 쉽게 통과한다는데 이해가 잘 안되서 쓰지 못했다.
추가 학습이 필요한 문제이다.