본문 바로가기
Beakjoon&프로그래머스/파이썬

[프로그래머스/파이썬] 소수 찾기

by 현장 2021. 12. 12.

-코드

from math import sqrt
def solution(n):
    seive = [True] * (n + 1)
    for i in range(2, int(sqrt(n)) + 1):
        if seive[i]:
            for j in range(i + i, n + 1, i):
                seive[j] = False
    answer = [i for i in range(2, n + 1) if seive[i]]
    return len(answer)

처음에는 그냥 for문으로 1~n까지 일일이 다 검사하는 코드를 짰으나 시간 초과가 나와서 에라토스테네스의 체를 사용하였습니다.