一般方法:判断一个数n是不是素数,可以用2到√n 以内的所有整数去除n,看能否整除,如果都能整除,则n是素数。(慢) 筛法求素数:把2到n中所有的数都列出来,然后从2开始,先划掉n内所有2的倍数,然后每次从下一个剩下的数(必然是素数)开始,划掉其n内的所有倍数。最后剩下的数,就都是素数。 空间换时间 ...
分类:
其他好文 时间:
2017-09-10 11:14:57
阅读次数:
121
写这个博客目的就是为了记录下学过的模板方便我这焫鷄复习吧//dalao们绕道 近期学的: (1)来自机房学长jjh大神教的求1~n的所有最小素因数和加上本焫鷄的批注 #include<iostream> #include<cstdio> #include<cstring> #include<algo ...
分类:
其他好文 时间:
2017-08-22 20:57:16
阅读次数:
214
// 代码待添加 GCD求最大公约数 扩展GCD求ax + by = c 的解以及判断是否有解 -- 当c为gcd(a,b)的倍数 Eratosthenes's sieve 埃氏筛选法求素数 筛选法求1~n欧拉函数值 -- 与埃氏筛选法一样,如果一个数j是i的倍数,那么其欧拉函数值就phi[j] = ...
分类:
其他好文 时间:
2017-08-21 20:39:26
阅读次数:
132
OJ题目:click here~~ 题目分析:输出第k个素数 贴这么简单的题目,目的不清纯 用筛法求素数的基本思想是:把从1開始的、某一范围内的正整数从小到大顺序排列, 1不是素数,首先把它筛掉。剩下的数中选择最小的数是素数,然后去掉它的倍数。依次类推。直到筛子为空时结束。如有: 1 2 3 4 5 ...
分类:
其他好文 时间:
2017-08-15 22:55:01
阅读次数:
133
素数筛,就是按照顺序把合数踢掉,剩下的是素数。 欧拉筛是一种O(n)求素数的筛法。他避免了埃拉特斯特尼筛法对同一数的多次筛除。 欧拉筛的原理是只通过数的最小质因数筛数。 先上代码: 对于当前处理数i,我们将i分解成p1*p2*p3……,当前枚举素数为p[j]。 由于j从小到大枚举,直到i%p[j]= ...
分类:
其他好文 时间:
2017-08-01 21:40:50
阅读次数:
2515
<?phpheader("content-type:text/html;charset=utf-8");//设置编码格式//计算素数,素数是只能被自己和1整除的正整数,特别指出的是我们规定1不是素数/*方法一:定义一个函数计算素数function prime_Number($n){ $c=0;//计 ...
分类:
Web程序 时间:
2017-07-30 11:33:05
阅读次数:
192
筛素数 void shai() { no[1]=true;no[0]=true; for(int i=2;i<=r;i++) { if(!no[i]) p[++p[0]]=i; int j=1,t=i*p[1]; while(j<=p[0] && t<=r) { no[t]=true; if(i%p ...
分类:
其他好文 时间:
2017-07-28 13:30:31
阅读次数:
163
C语言 #include <stdio.h>#include <math.h>int main(){int i,j,a[100],N;scanf("%d",&N); for (i=1;i<=N;i++) a[i]=i; a[1]=0; for (i=2;i<sqrt(N);i++) for (j=i ...
分类:
其他好文 时间:
2017-07-22 16:48:37
阅读次数:
147
附:素数筛法原理(具体出处记不得了,可以留言我补上) 【算法-ACM-素数】求素数的算法及其复杂度分析 关于搜寻一定范围内素数的算法及其复杂度分析 ——曾晓奇 关于素数的算法是信息学竞赛和程序设计竞赛中常考的数论知识,在这里我跟大家讲一下寻找一定范围内素数的几个算法。看了以后相信对大家一定有帮助。 ...
分类:
其他好文 时间:
2017-07-14 23:13:58
阅读次数:
349
OJ题目:click here~~ 题目分析:输出第k个素数 贴这么简单的题目。目的不清纯 用筛法求素数的基本思想是:把从1開始的、某一范围内的正整数从小到大顺序排列, 1不是素数,首先把它筛掉。剩下的数中选择最小的数是素数,然后去掉它的倍数。依次类推,直到筛子为空时结束。如有: 1 2 3 4 5 ...
分类:
其他好文 时间:
2017-06-24 19:38:39
阅读次数:
118