代码改变世界

Factorial Trailing Zeroes

2015-03-05 21:00  笨笨的老兔子  阅读(137)  评论(0编辑  收藏  举报

求一个整数n的阶乘后面有几个0

思路:0肯定是由5*2=10得到,2的个数肯定远大于5,所以只要数一下n的阶乘的因式分解里有几个5即可。

  1. classSolution{
  2. public:
  3. int trailingZeroes(int n){
  4. int count =0;
  5. while(n)
  6. {
  7. count += n /5;
  8. n = n /5;
  9. }
  10. return count;
  11. }
  12. };