题目链接 题意:求[1,n]有多少个素数,1<=n<=10^11。时限为6000ms。 官方题解:一个模板题, 具体方法参考wiki或者Four Divisors。 题解:给出两种代码。 第一种方法Meisell-Lehmer算法只需265ms。 第二种方法不能运行但是能AC,只需35行。 第一种: ...
分类:
其他好文 时间:
2016-09-19 19:28:24
阅读次数:
366
题意:给求 1 - n 区间内的素数个数,n <= 1e11。 析:模板题。 代码如下: ...
分类:
其他好文 时间:
2016-09-19 13:12:17
阅读次数:
376
问题链接:HDU1431
看似比较简单的问题,实际上需要一个过程来解决,否则不是时间出问题,就是空间出问题。
首先,需要编写一个程序,计算1到100000000之间的回文素数,得到两个值。一是这个区间的最大回文素数是9981899,二是这个区间的回文素数个数是780个。
因此,在定义数组空间时,就可以取一个合适的数值,避免空间超出限制范围。同时可以节省存储空间,加快程序运行速度。
另外,使...
分类:
其他好文 时间:
2016-05-13 03:09:36
阅读次数:
124
题目链接:http://lightoj.com/volume_showproblem.php?problem=1197 给你a和b求a到b之间的素数个数。 先在小区间素数筛,大区间就用类似素数筛的想法,把a到b之间不是素数的标记出来。因为b-a最多1e5的大小,所以每组数据的时间复杂度最多就o(1e ...
分类:
其他好文 时间:
2016-04-01 21:49:30
阅读次数:
129
Help Hanzo 题意:求a~b间素数个数(1 ≤ a ≤ b < 231, b - a ≤ 100000). (全题在文末) 题解: a~b枚举必定TLE,普通打表MLE,真是头疼。。 b - a ≤ 100000 是关键。 类似素数筛的方法: 1.初始化vis[]=0 ; 2.素数的倍数vi
分类:
其他好文 时间:
2016-03-20 19:15:56
阅读次数:
197
How many prime numbersTime Limit: 3000/1000 MS (Java/Others)Memory Limit: 32768/32768 K (Java/Others) Total Submission(s): 14684Accepted Submission(s)...
分类:
其他好文 时间:
2015-12-20 15:48:30
阅读次数:
122
判断a是否为素数,求1——n的素数个数考虑欧拉筛法———— http://wenku.baidu.com/link?url=dFs00TAw8_k46aeSbXy5nB5LVqJ51uUJgY9zVWEDQdwjLN-qLFWZuYcGPE5EDcztNQAMtKfUbSseBvfBzV4fcQv....
分类:
其他好文 时间:
2015-12-16 17:22:31
阅读次数:
174
素数定理:随着x的增长,P(x) ≈x/ln(x) ,P(x)表示(1,x)内的素数的个数。这个定理,说明在1-x中,当x大到一定程度时,素数分布的概率为ln(x)竟然还有一道题目。素数个数的位数Problem : 117Time Limit : 1000msMemory Limit : 65536...
分类:
其他好文 时间:
2015-11-19 16:41:34
阅读次数:
110
这样做倒是挺简单的,怎么容易怎么做#include#include#define maxn 1000000int isprime[maxn+10];int prime[maxn/10];int count;int n;int main(){ while(scanf("%d",&n)!=EOF)...
分类:
其他好文 时间:
2015-11-04 00:22:49
阅读次数:
194