来做这个简单素数问题
关于素数,想必大家都做过吧,又有多少人为求素数问题超时而烦恼,今天我给大家总结出来一个求素数的高效算法,希望能帮助大家尽早点走出来这个超时的烦恼。
关于素数我们应该知道,一个数它是素数,它的倍数就一定不是素数吧,类如3是素数,对应的6,9,12都不是素数,通过这个思想来解决大家的烦恼
n=int(input()) #输入从0到n的的个数
count=0 #这个来计算素数的个数
a=[True]*(n+1) #这是来判断是否是素数
b=[] #这是存放素数
for i in range(2,n+1):
if a[i]:
count+=1
b.append(i)
for j in range(i*2,n+1,i): #相当于6,9,12等
a[j]=False #将其不是素数用False 标记
print(count)
print(b)