1부터 입력받은 숫자 n 사이에 있는 소수의 개수를 반환하는 함수, solution을 만들어 보세요.
소수는 1과 자기 자신으로만 나누어지는 수를 의미합니다.
(1은 소수가 아닙니다.)
제한 조건
n은 2이상 1000000이하의 자연수입니다.
prime[i] 의 i 는 소수 판별의 대상이 되고, prime[i]의 값이 0이면 소수, 1이면 소수가 아님을 뜻한다.
def solution(n):
prime = [0] * (n+1)
prime[0] =1
prime[1] =1
for j in range(2, n//2+1):
if prime[j] == 0:
for k in range(j + j,n+1,j):
prime[k] = 1
prime = [ i for i in range(n+1) if prime[i] == 0]
return len(prime)