一、线性筛法众所周知。。。线性筛就是在O(n)的时间里找出所有素数的方法code:void get_prime(int N){ int i, j, k; memset(Flag, sizeof(Flag), 0); for (i = 2; i N) break; ...
分类:
其他好文 时间:
2014-11-01 13:25:26
阅读次数:
152
题目大意:给定n和m,求Σ(1
i和j的限制不同,传统的线性筛法失效了,这里我们考虑容斥原理
令f[x]为GCD(i,j)=x的数对(i,j)的个数,这个不是很好求
我们令g[x]为存在公因数=x的数对(i,j)的个数(注意不是最大公因数!),显然有g[x]=(n/x)*(m/x)
但是这些数对中有一些的最大公因数为2d,3d,4d,我们要把他们减掉
于是最终f[x]=(n/x)*(m/...
分类:
其他好文 时间:
2014-10-09 15:46:48
阅读次数:
366
由于我要测试线性筛法的速度,用上了C/C++精确计时.此时传统的clock()方法不够用了,我们需要另一种测量的办法,即CPUTicks/CPUFreq.如何实现呢?#include LARGE_INTEGER freq,start,stop;QueryPerformanceFrequency(&f...
分类:
编程语言 时间:
2014-10-04 20:11:27
阅读次数:
196
写$\text{O}\left( n \log{\log{n}}\right)$的筛法很长时间了,我却从来没想过它的优化.偶然间看到线性筛法,心想大约是不错的优化,于是便爬去学习下.首先,$\text{O}\left( n \log{\log{n}}\right)$的筛法肯定要比$\text{O}\...
分类:
其他好文 时间:
2014-10-04 17:41:56
阅读次数:
331
Difference Between Primes
Time Limit:1000MS Memory Limit:32768KB 64bit IO Format:%I64d & %I64u
Description
All you know Goldbach conjecture.That is to say, Every even integer greate...
分类:
其他好文 时间:
2014-08-09 18:54:18
阅读次数:
272
题目:一个数的素因子的和如果也是素数就叫做DePrimes,统计给定区间内的DePrimes。
分析:数论。本题使用用一种素数的筛法,欧拉筛法,也加线性筛法。
这种方法,每次删选分两种情况:1.素因子不重复、2.素因子重复;
利用这个性质,统计DePrimes,如果素因子不同就加和,否则就去相应的...
分类:
其他好文 时间:
2014-07-30 12:20:03
阅读次数:
398
题目:给出一个正整数n,打印出所有从1~n的素数(即质数);关键是要找出一个判断一个正整数n是否为素数的方法...傻瓜解法--n,n/2 1 #include 2 int main() 3 { 4 int i,n; 5 while(scanf("%d",&n)==1) 6 { for(i...
分类:
其他好文 时间:
2014-07-18 15:19:43
阅读次数:
192
1.欧拉筛法在线性时间内求素数以及欧拉函数代码: 1 procedure get; 2 var i,j,k:longint; 3 begin 4 tot:=0; 5 fillchar(check,sizeof(check),false); 6 for i:=2 to n do 7 be...
分类:
其他好文 时间:
2014-06-25 22:11:51
阅读次数:
574