n = 123456
ls = [False,False]+[True]*(2*n-1)
for i in range(2,2*n+1):
if ls[i]:
for j in range(2*i,2*n+1,i):
ls[j]=False
while True:
n = int(input())
if n == 0:
break
count = 0
for j in ls[n+1:2*n+1]:
if j:
count+=1
print(count)
풀이
미리 에라토스테네스의 체를 max 크기로 만들어둔 다음 index로 분리한 뒤 True 값을 세서 출력한다.