黑马程序员技术交流社区

标题: 求10000!中0的个数,核心代码7行解决,不使用BigInteger [打印本页]

作者: snowaves    时间: 2014-8-28 00:58
标题: 求10000!中0的个数,核心代码7行解决,不使用BigInteger
  1. public class Num
  2. {
  3.         public static void main(String[] args)
  4.         {
  5.                 System.out.println(a(10000));               
  6.         }
  7.         public static int a(int Num)
  8.         {
  9.                 int x = 0;
  10.                 for(int i = 1;i<Num+1;i++)
  11.                 {
  12.                         int count = 0;
  13.                         int a = i;
  14.                         while(i%5 == 0)
  15.                         {        count++;                               
  16.                                 i = i/5;
  17.                         }
  18.                         x+=count;
  19.                         i = a;
  20.                 }
  21.                 return x;               
  22.         }       
  23. }
复制代码

作者: hejinzhong    时间: 2014-8-28 02:41
你这算的只是结尾的0
作者: 李天富    时间: 2014-8-28 03:10
  1. class  quling
  2. {
  3.         public static void main(String[] args)
  4.         {
  5.                 System.out.println(f(10000));
  6.         }
  7.         public static int f(int num)
  8.         {
  9.                 int count=0;
  10.                 for (int x=num; x>9; x=x/10)
  11.                 {
  12.                         if (x%10==0)
  13.                                 count++;       
  14.                 }
  15.                 return count;
  16.         }

  17. }
复制代码

作者: careit    时间: 2014-8-28 08:53
原题是统计1000!结果中有多少个0,上面代码统计的是结果末尾有多少连续0
作者: careit    时间: 2014-8-28 08:54
李天富 发表于 2014-8-28 03:10

这样统计的是10000中有多少0,而不是10000!的结果中有多少0
作者: 李章敏    时间: 2014-8-28 09:46
这统计的不是10000!吧
作者: 李天富    时间: 2014-8-28 11:45
careit 发表于 2014-8-28 08:54
这样统计的是10000中有多少0,而不是10000!的结果中有多少0

嗯,看错了。。




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2