N的阶乘末尾有多少个0

题目:N的阶乘末尾有多少个0

分析:

以100!为例,可以产生10的有:0 2 4 5 6 8 结尾的数字,显然2是确定的,因为4、6、8当中都含有因子2,所以都可看当是2,那么关键在于5的数量了那么该问题的实质是要求出1~100含有多少个5,在100!中1*...*5*...*10*...*15*...*20*...*25*...*30*...*35*...*40*...*45*...*50*...

其中:

5=1*5
10=2*5
15=3*5
20=4*5
25=5*5(2个5)
30=6*5
35=7*5
40=8*5
45=9*5
50=10*5=2*5*5(2个5)

5的倍数中,有100/5=20个(每个倍数中都有一个5)

25的倍数,有100/25=4个(25和50都中都有两个5,且5的倍数包含25和50)

一个5与一个2相乘可以产生10,所以只要计算出一共有多少个5就能得出会产生多少个0了。所以100!有20+4=24个0

同理,N!有N/5+N/25+N/125+...个0

原文地址:https://www.cnblogs.com/Mr-Wenyan/p/8657664.html