关于欧拉筛法和普通筛法
2017-04-29 09:02
141 查看
为的是让一个合数只让最小的一个素数筛去
prime[]数组中的素数是递增的,当i能整除prime[j],那么i*prime[j+1]这个合数肯定被prime[j]乘以某个数筛掉。因为i中含有prime[j],prime[j]比prime[j+1]小,即i=k*prime[j],那么i*prime[j+1]=(k*prime[j])*prime [j+1]=k’*prime[j],接下去的素数同理。所以不用筛下去了。因此,在满足i%prime[j]==0这个条件之前以及第一次满足改条件时,prime[j]必定是prime[j]*i的最小因子。
prime[]数组中的素数是递增的,当i能整除prime[j],那么i*prime[j+1]这个合数肯定被prime[j]乘以某个数筛掉。因为i中含有prime[j],prime[j]比prime[j+1]小,即i=k*prime[j],那么i*prime[j+1]=(k*prime[j])*prime [j+1]=k’*prime[j],接下去的素数同理。所以不用筛下去了。因此,在满足i%prime[j]==0这个条件之前以及第一次满足改条件时,prime[j]必定是prime[j]*i的最小因子。
相关文章推荐
- 【 数学基础】【素数线性筛法--欧拉筛法模板】【普通筛法的优化】
- 关于普通Linux定制版和LFS定制版的区别
- VC中一个关于宏的使用问题,字符串之间转换,宽字符与普通字符
- 关于 Java源文件带有package的普通程序和Applet编译和运行时错误的处理方法
- 关于友元函数(成员友元函数, 普通友元函数)
- 关于oracle普通被锁的问题解决
- 关于JavaMail的应用——发送普通的邮件
- 关于普通用户执行mount的问题
- php中关于普通表单多文件上传的处理方法
- 关于连接普通数据库时 WorkspaceFactory.Open 时的报错问题
- 正则表达式关于[]里的非普通字符不能被捕获
- 火狐浏览器(FF)不支持普通的象IE那样的加入收藏夹和设为首页,于是就找了关于FF的方法。后来测试了下,可以用了。。其代码如下:
- 关于类的指针对象和普通对象由于使用错误造成莫名报错
- 关于从普通文本提取正则表达式的再思考
- 关于XML数据库与普通数据库(概述)
- 关于“八大原因让Linux远离普通用户”
- 欧拉的一篇研究报告:关于整数因子和的一个非常奇特规律的发现
- 关于普通内部类,局部内部类,匿名内部类
- 关于 Java源文件带有package的普通程序和Applet编译和运行时错误的处理方法
- 将一个个的普通学生,培养成为具有中级职称的软件设计师--关于提高班教学成果的小结(仅仅是提纲,未作整理,供讨论)