您的位置:首页 > 其它

n阶乘 尾数0的个数

2015-07-16 21:11 211 查看
class Solution {
public:

int trailingZeroes(int n) {

if(n<=0) return 0;

int i=0;
int res=0;

while(n){
      res+=n/5;
      n=n/5;
     }
return res;
}
};

很神奇的,eg 125

125=25*5,相当于前前面有1,2,3,4,5,……,20,21,22,23,24,25 * 5

125/5 = 25 相当于前面变成0,0,0,0,1,……,4,4,4,4,4,5 *5

25/5=5 所以最后结果结果过就是25+5+1
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: