Factorial
题目含义:计算N!末尾有多少个 0。
Sample Input
6 3 60 100 1024 23456 8735373
Sample Output
0 14 24 253 5861 2183837
末尾为零必定是2*5=10,且2的因子数必定大于5的因字数。
算术基本定理中n!的素因子分解中的素数p的幂为[n/p]+[n/p²]+[n/p³]+……#include<cstdio>
#include<algorithm>
using namespace std;
int main()
{
int T,n,sum,tmp;
scanf("%d",&T);
while(T--)
{
sum = 0;
tmp = 5;
scanf("%d",&n);
while(tmp<=n)
{
sum += n / tmp;
tmp *= 5;
}
printf("%d\n",sum);
}
return 0;
}