이백만 이하 소수의 합
문제
10 이하의 소수를 모두 더하면 2 + 3 + 5 + 7 = 17 이 됩니다.
이백만(2,000,000) 이하 소수의 합은 얼마입니까?
풀이 (본인)
1 | var num = 2; |
풀이 (다른 사람)
1 | var num = 2; |
npm middleware 사용하여 소수의 합 구하기
sieve-of-eratosthenes
는 에라스토테네스의 체를 이용한 알고리즘입니다.
1 | npm install sieve-of-eratosthenes |
위 코드를 실행하여 sieve-of-eratosthenes
를 설치합니다.
node REPL을 통해서 위 사진과 같이 계산이 가능하다.
배운점
- 배열을 이용해서 소수들로 나눠보고 나누어지지 않는다면 소수를 추가하는 코드를 작성하니 속도가 10배정도 차이났다.
- 에라토스테네스 체를 이용하여 소수의 계산을 획기적으로 계산 할 수 있다.(1초 안에 연산가능)
느낀점
- 에라토스테네스 체를 알았지만 실제로 구현하기는 어렵다.(지금 상태에서….)