[LV1/python] 소수 찾기

nut3lla·2022년 6월 27일
0

Programmers

목록 보기
41/74

문제 설명

1부터 입력받은 숫자 n 사이에 있는 소수의 개수를 반환하는 함수, solution을 만들어 보세요.

소수는 1과 자기 자신으로만 나누어지는 수를 의미합니다.
(1은 소수가 아닙니다.)

제한 조건

  • n은 2이상 1000000이하의 자연수입니다.

입출력 예


SOLVE

def solution(n):
    num = set(range(2,n+1))
    for i in range(2,n+1):
        if i in num:
            num-=set(range(2*i,n+1,i))
    return len(num)

에라토스테네스의 체 set버전

def solution(n):
    primes = set(range(2,n+1))
    for i in range(2,n+1):
        if i in primes:
            primes-=set(range(2*i,n+1,i))
    return primes
profile
🦴피곤행🦴

0개의 댓글