172-阶乘后的零

给定一个整数n,返回n!结果结尾零的个数

​ 最直观的想法直接把数字的阶乘算出来,但是这样稳稳的上溢。

​思考一下,要得到整数10  只能由 2*5 得到,我们可以把问题转换成为寻找<n的所有数字中的分解因子中的2 和5 的个数。一个2和一个5 就能构成10 。

​比如10! =(2*5)*9*(2*4)*7*(2*3)*(5*1)*(2*2)*3*(2*1)

​其中有 6个22个5只能构成两个10 所以10的结果应该是2 。

统计2的个数没有意义的。2 的个数必然比5 多。因此我们只需要统计5 的个数就行了。

代码
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容