数学知识技巧

来源:互联网 发布:windows.old删不掉 cmd 编辑:程序博客网 时间:2024/06/07 05:33



取模:

ACM竞赛中经常会见到取模的操作,取模的规则一般如下:

对于加减乘运算,在运算之前取模和在运算之后取模的结果不变,因此可以在计算之前取模使得数据不会爆,注意中间如果是个多项式(有多步运算),那么每一次运算完都要取模,用来保证数据不会爆。

但是对于除法,不能直接对除数取模,要乘以除数的逆元,这样才能保证数据正确。求逆元的方法有好多种,根据费马小定理的快速幂写法比较直观。(一个例子)


扩展欧几里得:

已知a,b,c,那么对于未知的x,y,方程a*x+b*y=c的解可由扩展欧几里得算法得出。

(其中a,b,c可正可负)x有一个最小正整数解x=(x%b+b)%b。(例子(五指山))


质数唯一分解:

任何大于1的自然数都可以分解为质数连乘的形式。

从2开始除,除不尽再除以3,除不尽再除以5,以此类推,直到除尽。

例:35   35/2 除不了   35/3 除不了  35/5=7    7/7=1

所以35=5^1*7^1

    48    48/2=24   24/2=12   12/2=6   6/2=3   3/3=1

所以48=2^4*3^1

另外这里有一个结论,分解后的(指数+1)连乘就是这个数的因子个数

对35来说,因子个数是(1+1)*(1+1)=4   即1,5,7,35

对48来说,因子个数是(4+1)*(1+1)=10   即1,2,3,4,6,8,12,16,24,48