1000乘以999乘以998乘以997...3乘以2乘以乘以1的末尾连续有多少个零?
把从 1000 到 1 这些所有的数,只要是5的倍数的,一律分解成含因子5为止。
例如
10 = 2 * 5
15 = 3 * 5
25 = 5 * 5
50 = 2 * 25 = 2 * 5 * 5
100 = 4 * 25 = 4 * 5 * 5
105 = 21 * 5
125 = 5 * 5 * 5
余此类推。
从1 到1000,能被5 整除的数有1000/5 = 200 个
能被5的平方即25整除的数有 1000/25 = 40 个
能被5的立方即125整除的数有 1000/125 = 8 个
能被5的4次方即625 整除的数有1000/625 = 1个 (即625自己)
把这1000个数,只要能分解出因子5,就一直分解到因子5为止。共可分解出
200 + 40 + 8 + 1 = 249
即最终可分解出 249 个5。
只要有1个5,与偶数相乘后就会出现1个0。
而 从1 到1000,偶数的数量是足够的,所以 有249个5,乘积结果中就有249个0。
n的阶乘(n!)末尾零(0)的个数快速估算方法
一般来说,随着数值n的增大,n的阶乘末尾的零越来越多,而末尾零的个数是可以通过n精确计算出来的,但通常情况下,这种计算过于复杂,本文提供一种可以快速估算n!末尾零个数的方法,使用起来十分简便,而且误差也很小。
例如:30!=265252859812191058636308480000000
数一下,其末尾有7个零。
再如:100!=93326215443944152681699238856266700490715968264381621468592963895217599993229915608941463976156518286253697920827223758251185210916864000000000000000000000000
数一下,其末尾有24个零。
于是我们要问,那么n!的末尾有多少个零呢?
答案:可以用(n-1)/4并取整来估算(或干脆直接用n/4来估算)。
如上面30!末尾有(30-1)/4=7个零,而100!末尾则有(100-1)/4=24个零。
从中我们可以看到其图线斜率接近1/4。