题目一:172、阶乘后的零
给定一个整数 n,返回 n! 结果中,尾数中零的数量
举一个栗子:6!=【 1 * 2 * 3 * 4 * 5 * 6 】
6!= 720
所以的话就是返回1,因为720 后面只有一个0
1、那么应该怎么做呢?
乍一看,感觉问题很复杂,其实只要冷静下来,一步一步简化,结果是十分明了的~
第一个想法:首先把阶乘算出来,然后从前到后每一位都遍历吗?
这个方法肯定是不可取的,复杂度太高了。
2、我们只需要简单分析一下
题目要求看 0 的数量 ,
1、末尾的0 是从哪里来的?
肯定是乘以 10 得来的!
2、10 是从哪里来的?
10 = 2 * 5;也就是说,10 只能从2 和5 相乘得到;
只看 2 和 5 出现的次数,因为只有2 和 5 才会产生 10 ,才会有 0 的呀!
当然,这里要多说一嘴,0 就不要考虑了,因为 0&