摘要:
欧几里得算法求最大公约数 如果设两个数为a,b,他们的最大公约数是gcd(a,b),那么可以得出gcd(a,b)= gcd(b,a mod b),于是有下面求两个数最大公约数的欧几里得算法 int gcd (int a,int b){ return b ? gcd(b,a % b): a;//a和0 阅读全文
摘要:
从我csdn账号里搬运过来的~ 阅读全文
摘要:
欧拉筛素数算法是一个很巧妙的算法,他的核心思想是保证每个合数只会被其最小质因数筛掉,所以能达到O(n)的时间复杂度。 先看代码,后看原理 C++实现 const int N = 1000010; int n,cnt; int primes[N];//质数数组 bool st[N]; int main 阅读全文