数论
cycyf0606
这个作者很懒,什么都没留下…
展开
-
欧几里得算法
基础欧几里得算法又称辗转相除法,公式:gcd(a,b)=gcd( a , b )。(a>b)一下搬运自百度百科证法一a可以表示成a = kb + r(a,b,k,r皆为正整数,且r<b),则r = a mod b假设d是a,b的一个公约数,记作d|a,d|b(a可整除d,b也可以整除d),即a和b都可以被d整除。而r = a - kb,两边同时除以d,r/d=a/d-kb/d=m,由等...转载 2018-07-16 13:50:17 · 1063 阅读 · 0 评论 -
中国剩余定理
http://www.cnblogs.com/walker01/archive/2010/01/23/1654880.html https://blog.csdn.net/acdreamers/article/details/8050018转载 2018-07-16 16:55:37 · 150 阅读 · 0 评论 -
素数筛选
求【0,n】之间的素数 1.开一个大的bool型数组prime[],大小就是n+1就可以了.先把所有的下标为奇数的标为true,下标为偶数的标为false. 2.然后: for( i=3; i<=sqrt(n); i+=2 ) { if(prime) for( j=i+i; j<=n; j+=i ) prime[j]=false; ...转载 2018-07-16 18:04:30 · 77 阅读 · 0 评论 -
快速幂(搬运+自己的理解)
几乎搬自百度百科(吐槽一句百度百科真是太强大了) 原理: 以下以求a的b次方来介绍 把b转换成二进制。 该二进制数第i位的权为 例如 11的二进制是1011 11 = 2³×1 + 2²×0 + 2¹×1 + 2º×1 因此,我们将a¹¹转化为算 常规求幂 int pow1(int a,int b){ int r=1; while(b...转载 2018-07-16 18:59:10 · 539 阅读 · 0 评论