当n到二三十时候,N!已经非常大了,会溢出.肯定不能用直接计算出阶乘的方式来统计0的个数. 通常用1到n的数字中,每个数字分解出2和5的个数,因为2 * 5 = 10因为2个数非常多,因此只要算出5的个数就可以了 1234567 def (N): count = 0 for j in range(1, N + 1): while j % 5 == 0: j /= 5 count += 1 return b 赞微海报分享
近期评论