随笔分类 - 数论
摘要:其原理就是先将2-n之内的所有数存在一个数组里,初始化所有数全为素数,然后从2开始寻找,只要标记是素数便将他的所有倍数的标记都改为合数,依次类推。时间复杂度为O(nloglogn)。代码实现1 void prime_table()2 {3 for(int i=2;(LL)i 2 using ...
阅读全文
摘要:欧几里得算法又称辗转相除法,主要用于求两数的最大公约数即gcd(a,b)。 欧几里得算法给出gcd(a,b)=gcd(b,a%b)(a>b) 下面我们给出证明: 首先我们设k为gcd(a,b),则a=km,b=kn。 则a%b=a-c*b=km-c*kn=(m-cn)k gcd(b,a%b)=gcd
阅读全文

浙公网安备 33010602011771号