nyoj 84 阶乘的0

计算n!的十进制表示最后有多少个0。

分析:乘以能被5整除的数时就会出现0。如果有多个5,如25=5*5,则会产生2个0。

所以,就是计算 /5 + /25 + /125 + ... 的结果。

#include <stdio.h>
int main (void)
{
  int n, m;
  scanf ("%d", &n);
  while (n--)
  {
    scanf ("%d", &m);
    int sum = 0;
    while (m >= 5)
    {
      m = m / 5;
      sum += m;
    }
    printf ("%d\n", sum);
  }
  return 0;
}

 

posted on 2014-11-17 22:38  togolife  阅读(121)  评论(0编辑  收藏  举报