前言
本来今天打比赛的时候,一心想要打出1e9范围内的素数表,直到后来用python打了出来。。。
pip install primesieve
|
|
1e9范围内有50847534个素数,符合\(\frac{n}{ln(n)}\)的规律。
打出来的素数表的txt文本大小有478Mb之大。我真是一个智障,还痴心想要把打的表粘上去。
明天给自己的数论加一点技能点。。。
一般的素数表打在1e5的范围之内,因为可以采用平方枚举的方法,超过1e5的质数(任意的数都可以拆成若干个质数的乘积)就要暴力的进行计算了。
学习如何减小筛选素数的范围,比如今天做的那个二分求等比数列的和的小技巧,其实还不是很懂。
1e9范围内的素数的最大的间隔为282
所以昨天的B题倒着枚举就行了。。。菜醒