Given an integer n, return the number of trailing zeroes in n!.
Note: Your solution should be in logarithmic time complexity.
解决思路: 决定阶乘末尾零的个数其实是数列中5出现的次数,,比如5的阶乘一个零。1024的阶乘末尾到底有几个零呢?
代码如下:
int trailingZeroes(int n) {int total = 0;while(n>=5){n = (n-(n%5))/5;total = total + n;}return total;}
python 的解决方案:
:factor, count = :curCount = n // factorif not curCount:breakcount += curCountfactor *= 5return count
大多数人想要改造这个世界,但却罕有人想改造自己。