Factorial

Posted cutepota

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Factorial相关的知识,希望对你有一定的参考价值。

给定一个整数N(N<=10^9),求其N!末尾有多少个0? 例如:N=10,N!=3628800,N!末尾有两个0。

 

sol:要求n!末尾有多少个0,问题转换为1~n中包含多少个5。因为2*5=10,可为结果提供一个0,而1~n中,包含的2的个数一定大于5,所以,只要求1~n中包含多少个5即可。

 1 #include<bits/stdc++.h>
 2 using namespace std;
 3 int main()
 4 {
 5     int n,count;
 6     cin>>n;
 7     while (n)//1~n中包含了多少个5,25,625... 
 8     {
 9         count+=n/5;
10         n/=5;
11     }
12     cout<<count;
13     return 0;
14 } 

以上是关于Factorial的主要内容,如果未能解决你的问题,请参考以下文章

在 R 中,为啥 factorial(100) 与 prod(1:100) 的显示不同?

[Java]函数求阶乘n!(factorial)(四种方法)

LightOJ1035 Intelligent Factorial Factorization(算数基本定理)

用while循环python写factorial

递归总结

JS-第七章