
数论基本定理
pupil_blue
这个作者很懒,什么都没留下…
展开
-
容斥原理
班里有10个人喜欢数学,15个喜欢语文,21个喜欢编程,一共有多少学生呢用A, B, C表示人数总数等于|A∪B∪C|,直接相加肯定是不对的有一些重复了,所以扣掉|A∩B|,|A∩B|,|A∩C|,但是又多扣了一小部分,再加上|A∩B∩C|即|A∪B∪C| = |A| + |B| + |C| - |A∩B| - |A∩B| - |A∩C| + |A∩B∩C|所以,一般的对任原创 2016-12-05 22:58:47 · 380 阅读 · 0 评论 -
欧拉函数
求小于正整数n的数中与n互素的数的个数C由唯一分解定理,n = p1^a1 * p2^a2 * …… * pk ^ ak (pi 均是素数)由容斥原理(参考容斥原理那一篇)得C = n - n/p1 - n/p2 - …… - n/pk + n/(p1*p2) + n/(p1*p3) + …… + n/(p(k-1)*pk) - n/(p1*p2*p3) ………………由原创 2016-12-06 08:32:50 · 239 阅读 · 0 评论 -
唯一分解定理
对任意一个整数X,X可以分解成若干素数相乘的结果X=p1^a1 * p2^a2 * p3^a3 * ……(p1,p2,p3……是素数,a1,a2,a3是素数出现的次数),将这些素数从小到大排列,有且仅有一种顺序原创 2016-11-26 00:08:25 · 331 阅读 · 0 评论 -
素数打表及数学定理
对于一个数i,所有i的倍数都不是素数求1~n的素数,将1~sqrt(n)的数的所有倍数剔除,剩下的即是素数memset(vis, 0, sizeof(vis));for(int i = 2; i <= n; i++){ for(int j = i*2; j <= n; j += i) vis[j] = 1;}共需循环n/2 + n/3 + n/2 + …… + n/n = O(n*l原创 2016-11-26 00:24:32 · 270 阅读 · 0 评论 -
扩展欧几里得
扩展欧几里得主要是解决二元一次方程即a*x + b*y + c = 0的解的问题拓展欧几里得:void ex_gcd(int a, int b, int& d, int& x, int& y){ if(!b){ d = a; x = 1; y = 0; } else{ ex_gcd(b, a%b, d, y, x); y -= x*(a/b); }}有数学原创 2016-11-26 00:57:53 · 280 阅读 · 0 评论 -
数学公式及证明(持续更新)
1^2 + 2^2 + 3^2 + …… + n^2 = n*(n+1)*(2*n+1)/ 6证:n^3 - (n-1)^3 = 3*n^2-3*n+1……3^3 - 2^3 = 3*3^2-3*3+12^3 - 1^3 = 3*2^2-3*2+11^3 - 0^3 = 3*1^2 - 3*1 + 1上述所有式子左右同时相加得:n^3 = 3*(1^2 + 2^原创 2016-12-22 12:00:05 · 900 阅读 · 0 评论