题解 | 筛选法求素数
筛选法求素数
https://www.nowcoder.com/practice/06c3dcc303654ef4926654023eca1e5a
n=int(input())
flag=[1]*(n+1)
flag[0]=flag[1]=0
primes=[]*n
for i in range(2,n+1):
if flag[i]==1:
primes.append(i)
for p in primes:
if p*i>n:
break
flag[p*i]=0
if i%p==0:
break
print(*primes)
print(n-len(primes)-1)
查看18道真题和解析