n的阶乘后面有多少个0?
6的阶乘 = 1*2*3*4*5*6 = 720,720后面有1个0。
Input
一个数N(1 <= N <= 10^9)
Output
输出0的数量
Input示例
5
Output示例
1
题解
将n分解
n!=2a13a25a37a4…
n!末尾零的个数即 n! 的因子10的个数,而10=2*5
那么答案就是
ans=Min{a1,a3}=a3
#include<stdio.h>
int main()
{
int n;
int cnt=0;// n!中5^k 的 k
scanf("%d",&n);
while(n){
cnt+=n/=5;
}
printf("%d\n",cnt);
return 0;
}