= =素数是一个很重要的块,所以筛法也是灰常重要的 首先 是传统筛法 第一版: ps:其实我个人感觉这个算法平常的一些题是够用的( ̄ε(# ̄)☆╰╮( ̄▽ ̄///)(快学习! 第二版: 相比于第一版,先去除了2以后的偶数,因为这些偶数根本不可能是素数嘛(~ ̄▽ ̄)~,( ̄ε(# ̄)☆╰(废话 嗯,容 ...
分类:
其他好文 时间:
2016-04-16 12:22:57
阅读次数:
162
参考:http://blog.csdn.net/once_hnu/article/details/6302283 素数,就是只有1和自身两个约数的正整数。2是最小的素数。根据定义,我们就可以直接判断一个数字n是否是素数。优化后的复杂度是O(n*sqrt(n))。原因的话:http://www.goo
分类:
其他好文 时间:
2016-03-05 21:55:47
阅读次数:
226
Description
The ministers of the cabinet were quite upset by the message from the Chief of Security stating that they would all have to change the four-digit room numbers
on their offices.
— ...
分类:
其他好文 时间:
2015-08-21 15:45:32
阅读次数:
205
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=5391
题目大意:一个球初始体积为1,一天天变大,第一天变大1倍,第二天变大2倍,第n天变大n倍。问当第 n-1天的时候,体积变为多少。注意答案对n取模。
思路:题目意思搞了好久,其实就是第一天是1,第二天是1*2,第三天是1*2*3,也就是当第n天的时候是n!。那么答案就是(n-1)! % n。
...
分类:
其他好文 时间:
2015-08-16 13:50:24
阅读次数:
134
/*给定一个正整数N,求出[2,N]中的所有素数*/
#define maxn 1000000
boool vis[maxn];
void getprime(int n, int &tot, int ans[]) //筛法将合数筛掉,留下的则是素数 ,用于快速判断一个区间内的所有素数
{
fot = 0; //记录素数的个数
for (int i = 2; i<= n; i++)...
分类:
其他好文 时间:
2015-08-03 09:01:48
阅读次数:
186
线性筛更快。1.埃氏筛法1 int m=sqrt(n+0.5);2 memset(vis,0,sizeof(vis));3 for(int i=2;i 2 #include 3 #include 4 #include 5 #include 6 using namespace std; 7 in...
分类:
其他好文 时间:
2015-07-19 19:56:34
阅读次数:
107
题意:给定两个数l,r求这之间最近和最远的两个素数。数据范围是整数的上限。r-l
分析:总思路是把l和r间的素数全部找出来,然后遍历一遍求最小距离和最大距离。用一个函数预处理数据范围内的所有素数是不现实的,一来数组不可r能开那么大二来会超时。想想素数筛的思想:用sqrt(n)以内的素数筛掉n以内的所有合数,剩下n以内的素数。这里既然预处理不可能,我们一样可以用sqrt(n)以内的素数来筛,只是这...
分类:
其他好文 时间:
2015-07-05 12:32:01
阅读次数:
151
在期末被各科的大作业碾压快要窒息之际,百忙之中抽空上牛客网逛了逛,无意中发现一道好题,NowCoder猜想,题意很明显,就是个简单的素数筛法,但竟然超内存了,我晕(+﹏+)~ 明明有 3 万多 k 的空间限制……于是我不打表,试了试最暴力的做法,赤裸裸的做法果然超时了,无奈,只好对素数筛法进行位.....
分类:
其他好文 时间:
2015-07-04 18:17:57
阅读次数:
839