博客
关于我
洛谷P1134 阶乘问题
阅读量:337 次
发布时间:2019-03-04

本文共 303 字,大约阅读时间需要 1 分钟。

N!末尾有多少个零的问题是一个经典的数论问题。要解决这个问题,我们需要计算N!中因数10的个数,而10是由2和5相乘得到的。因此,N!末尾零的数量取决于N!中2和5的因子对的数量,其中较小的那个数量决定了末尾零的数量。

由于2的数量通常比5多,因此,计算5的数量通常就足够了。具体来说,我们需要计算1到N之间能被5整除的数的个数,以及能被25、125等更高次幂整除的数的个数,然后将它们累加起来。

例如:

  • 当N=100时,计算方式为:
    • 100 ÷ 5 = 20
    • 100 ÷ 25 = 4
    • 100 ÷ 125 = 0
    • 总数为20 + 4 = 24个零。

通过这种方法,我们可以准确地计算出N!末尾有多少个零。

转载地址:http://qjph.baihongyu.com/

你可能感兴趣的文章
Objective-C实现Miller-Rabin素性测试程序(附完整源码)
查看>>
Objective-C实现MinhashLSH算法(附完整源码)
查看>>
Objective-C实现MinhashLSH算法(附完整源码)
查看>>
Objective-C实现MinHeap最小堆算法(附完整源码)
查看>>
Objective-C实现minimum coin change最小硬币找零算法(附完整源码)
查看>>
Objective-C实现minimum cut最小切割流算法(附完整源码)
查看>>
Objective-C实现minimum partition最小分区算法(附完整源码)
查看>>
Objective-C实现Minimum Priority Queu最小优先级队列算法(附完整源码)
查看>>
Objective-C实现Minimum Vertex Cover最小顶点覆盖算法(附完整源码)
查看>>
Objective-C实现MinimumCostPath最小成本路径算法(附完整源码)
查看>>
Objective-C实现mobius function莫比乌斯函数算法(附完整源码)
查看>>
Objective-C实现modular Binary Exponentiation模二进制指数算法 (附完整源码)
查看>>
Objective-C实现modular exponential模指数算法(附完整源码)
查看>>
Objective-C实现monte carlo dice蒙特卡洛骰子模拟算法(附完整源码)
查看>>
Objective-C实现monte carlo蒙特卡罗算法(附完整源码)
查看>>
Objective-C实现msd 基数排序算法(附完整源码)
查看>>
Objective-C实现MSRCR算法(附完整源码)
查看>>
Objective-C实现multi level feedback queue多级反馈队列算法(附完整源码)
查看>>
Objective-C实现multilayer perceptron classifier多层感知器分类器算法(附完整源码)
查看>>
Objective-C实现multiplesThreeAndFive三或五倍数的算法 (附完整源码)
查看>>