素筛讲解及模板(线性筛)
来源:互联网 发布:android端编程软件 编辑:程序博客网 时间:2024/06/06 20:43
本文链接:http://blog.csdn.net/sjf0115/article/details/8693756
<1>方法一
<2>方法二
<3>方法三
这种方法比较好理解,初始时,假设全部都是素数,当找到一个素数时,显然这个素数乘上另外一个数之后都是合数
把这些合数都筛掉,即算法名字的由来。但仔细分析能发现,这种方法会造成重复筛除合数,影响效率。
比如10,在i=2的时候,k=2*15筛了一次;在i=5,k=5*6 的时候又筛了一次。所以,也就有了快速线性筛法。
代码中体现在:
if(i%prime[j]==0)break;
prime数组 中的素数是递增的,当 i 能整除 prime[j],那么 i*prime[j+1] 这个合数肯定被 prime[j] 乘以某个数筛掉。
因为i中含有prime[j], prime[j] 比 prime[j+1] 小。接下去的素数同理。所以不用筛下去了。
在满足i%prme[j]==0这个条件之前以及第一次满足改条件时,pr[j]必定是pr[j]*i的最小因子
阅读全文
0 0
- 素筛讲解及模板(线性筛)
- (模板)线性筛素数
- 线性筛素数模板
- 线性筛模板
- 线性筛模板
- 线性筛模板
- 线性素数筛模板
- 【模板】线性筛素数
- [模板]线性筛素数
- 【模板】线性筛素数
- luogu3383 线性筛模板
- 线性筛素数模板
- 【模板】线性筛素数(埃筛+欧筛)
- 线性素数筛法模板
- 线性筛μ的模板
- 线性筛求质数模板
- [模板练习]线性筛素数
- 欧拉线性筛模板
- 监控工具之zabbix
- HDU 1856 More is better 【并查集】
- SQL中转换数据类型的 Cast和Convert的用法和区别 SQL Server 函数
- 每日一练(8)—— 野指针
- CSDN·MarkDown常用操作
- 素筛讲解及模板(线性筛)
- WordPress模板制作教程
- Java:使用I/O流操作将一个图片复制到另一个文件夹下后打不开的解决方法
- 单链表的实现和相关面试题及其详解(C语言)
- c++ set求差集,并集,交集
- 关于Java常见问题
- com.rabbitmq.client.AlreadyClosedException: connection is already closed due to connection error;
- android ArrayAdapter抛出java.lang.UnsupportedOperationException
- HDU 1061暴力打表找规律