码迷,mamicode.com
首页 >  
搜索关键字:线性筛法    ( 58个结果
素数专题
素数专题素数是一个经常的涉及到得内容,所以有必要整理出有关解决素数相关问题的算法学习资料:Eratosthenes筛法和欧拉筛法对比 一般筛法求素数+快速线性筛法求素数 数学技巧之素数筛选 1 /* 2 约数枚举,复杂度O (sqrt(n)) 3 By TiaoZhan 4 */...
分类:其他好文   时间:2015-08-17 13:49:01    阅读次数:202
数论 - 线性筛法与积性函数
首先以求1000000以内的素数为例来探讨筛法 Eratosthenes筛法(埃拉托斯特尼筛法)时间复杂度:O(N*loglogN) 空间复杂度:O(N)代码:#include #include #include #include #include #include #include #inclu...
分类:其他好文   时间:2015-08-08 00:06:15    阅读次数:144
BZOJ 2818 Gcd
本题考查的知识点主要就是用线性筛法求欧拉函数φ,首先说一下什么是欧拉函数:对正整数n,欧拉函数是少于或等于n的数中与n互质的数的数目。之所以要用线性筛法,是因为它能使我们O(n)的求出值。 先简要介绍一下线性筛法求欧拉函数φ:(摘自baidu) int m[maxn],phi[maxn],p[max...
分类:其他好文   时间:2015-08-03 18:16:37    阅读次数:141
hdu 3823 线性筛法
筛出足够多的素数然后存起来查找即可。 1 #include 2 #include 3 #include 4 #include 5 using namespace std; 6 7 typedef long long ll; 8 const int N = 20000001; 9 const...
分类:其他好文   时间:2015-07-27 20:28:33    阅读次数:150
Algorithm --> 筛法求素数
一般的线性筛法genPrime和genPrime2是筛法求素数的两种实现,一个思路,表示方法不同而已。#include #include #includeusing namespace std; const int MAXV = 100; //素数表范围 bool flag[MAXV+1];...
分类:其他好文   时间:2015-06-09 23:31:04    阅读次数:158
欧拉线性筛法求素数(顺便实现欧拉函数的求值)
我们先来看一下最经典的埃拉特斯特尼筛法。时间复杂度为O(n loglog n) int ans[MAXN]; void Prime(int n) { int cnt=0; memset(prime,1,sizeof(prime)); prime[0]=prime[1]=0; for(int i=2;i<n;i++) { if(vis[i]) { ans[cnt++]=...
分类:其他好文   时间:2015-05-30 09:24:54    阅读次数:277
欧拉函数
《2》 1 //线性筛法求解极性函数(欧拉函数) 2 memset(check, false, sizeof(check)); 3 fai[1] = 1; 4 int tot = 0; 5 for(int i=2; iN) break;15 check[i*peime[j]] = true;...
分类:其他好文   时间:2015-05-20 23:51:00    阅读次数:272
【BZOJ】【2005】【NOI2010】能量采集
欧拉函数 玛雅,我应该先看看JZP的论文的……贾志鹏《线性筛法与积性函数》例题一 这题的做法……仔细想下可以得到:$ans=2*\sum_{a=1}^n\sum_{b=1}^m gcd(a,b)-n*m$ 那么重点就在于算$\sum_{a=1}^n\sum_{b=1}^m gcd(a,b)$这...
分类:其他好文   时间:2015-04-03 18:54:56    阅读次数:201
【BZOJ】1101: [POI2007]Zap(莫比乌斯+分块)
http://www.lydsy.com/JudgeOnline/problem.php?id=1101无限膜拜数论和分块orz首先莫比乌斯函数的一些性质可以看《初等数论》或《具体数学》或贾志鹏的《线性筛法和积性函数》我写一些笔记啥的吧。。首先莫比乌斯函数的定义及一些性质(免去证明):$$\mu (...
分类:其他好文   时间:2014-11-28 15:57:22    阅读次数:351
UVa 884 - Factorial Factors
题目:输出n!中素数因数的个数。 分析:数论。这里使用欧拉筛法计算素数,在计算过程中求解即可。             传统筛法是利用每个素数,筛掉自己的整数倍;             欧拉筛法是利用当前计算出的所有素数,乘以当前数字筛数;             所以每个前驱的素椅子个数一定比当前数的素因子个数少一个。 说明:又一次用了“线性筛法”。 #include #incl...
分类:其他好文   时间:2014-11-17 14:04:17    阅读次数:138
58条   上一页 1 ... 3 4 5 6 下一页
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!