![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
ACM数论
文章平均质量分 62
KasumiMasami
有村架纯脑残粉、长泽雅美控、早见大法好、怪物猎人爱好者
展开
-
(ACM数论)求N的阶乘末尾有多少个0
问题描述:给定一个整数N,那么N的阶乘N!末尾有多少个0?这个问题的难点在于,不能直接计算出N!,因为会溢出。既然不能直接计算,那就换个姿势计算(手动滑稽)首先,我们考虑到N!末尾0的个数和 N!有多少个因子10有关,而10 = 2 * 5 ,于是我们得到了一个解法:把2,3,… ,N每个数拥有因子2的个数累加起来记为countTwo,把2,3,… ,N每个数拥有因子5的个数累加起来记为countF原创 2016-08-29 16:23:24 · 1953 阅读 · 0 评论 -
(ACM数论)求乘法逆元的各种姿势~
首先,通过下面的式子来看看什么是乘法逆元~x * n % P = 1,其中x和P为已知且互素,n未知(比如在 2 * n % 7 = 1 这个式子里,n就是乘法逆元)弄懂什么是乘法逆元,来看看有什么姿势可以把它求出来吧~姿势1.暴力(此姿势不要求P为素数)没有什么问题是一个暴力解决不了的,如果有,那就两个(手动滑稽)代码如下:int n;for(int i = 1 ;i <= P ;i++){原创 2016-08-29 16:55:34 · 1828 阅读 · 0 评论 -
(ACM数论)中国剩余定理(孙子定理)
中国剩余定理是一种能求解一次同余方程组的姿势~首先我们来看看什么是一次同余方程组:X % a[1] = b[1]X % a[2] = b[2]….X % a[n] = b[n]这里的 % 是取余数的意思,使用这个姿势的前提是a[1]、a[2]、a[3]、… 、a[n]两两互质。令 X = X[1] + X[2] + … + X[n],此时只要找到一组 X[i] 满足 X[i] % a[i] =原创 2016-08-29 20:41:42 · 1603 阅读 · 0 评论