ror_coding

[Programmers] 소수 찾기 - 12921 본문

Algorithm/Python

[Programmers] 소수 찾기 - 12921

ro_rdil_31 2024. 10. 12. 13:08
728x90

에라토스테네스의 체( Sieve of Eratosthenes )알고리즘 : 소수를 판별하는 알고리즘이다.

소수들을 대량으로 빠르고 정확하게 구하는 방법!

 

Question

 

1부터 입력받은 숫자 n 사이에 있는 소수의 개수를 반환하는 함수, solution을 만들어 보세요.
소수는 1과 자기 자신으로만 나누어지는 수를 의미합니다.
(1은 소수가 아닙니다.)

 

 

Point

 

  • Sieve of Eratosthenes 사용.

 

Code

 

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

 

now me

On my github

 

728x90