- 2부터 N까지 모든 정수를 적는다.
- 아직 지우지 않은 수 중 가장 작은 수를 찾는다. 이것을 P라고 하고, 이 수는 소수이다.
- P를 지우고, 아직 지우지 않은 P의 배수를 크기 순서대로 지운다.
- 아직 모든 수를 지우지 않았다면, 다시 2번 단계로 간다.
먼저 2~n까지의 정수가 든 리스트를 만든다. 이후 소수들을 저장하는 리스트를 생성한다. 정수 리스트가 빌 때까지 반복문을 돌린다. 이 때 정수 리스트의 맨 첫 번째 값이 소수가 되며, 이후 해당 소수의 배수들을 모두 리스트에서 삭제한다. 반복문이 끝나면 소수 리스트 안에 모든 소수가 들어간다.
'코딩테스트 준비' 카테고리의 다른 글
파이썬 itertools permutations! (0) | 2021.03.04 |
---|---|
최소 신장(스패닝) 트리 - 크루스 칼 알고리즘!! (0) | 2021.02.27 |
스택 문제 stack (0) | 2021.02.26 |
위상 정렬! (0) | 2021.02.26 |
위상 정렬! (0) | 2021.02.26 |