您的位置:首页 > 其它

2016! 的结果有多少个0的求解方法

2017-03-27 12:17 106 查看
前天在做网易笔试题时碰到一道求2016的阶乘有多少个零的选择题,一时被难住了,后来不甘心,就认认真真思考了一番,终于找到了一种很简单的解法。

求N的阶乘后有多少个零的解法如下:

(1)原理说明:5和一个偶数(不考虑偶数0)相乘即可得到一个结果为10的倍数的数值,也就是说,产生了零。在1~ N 中找5,有 多少个5,就有多少个零。

  例如,15 =  5 * 3 ,即15有一个·5 ;20 = 5 * 4 ,即20有一个·5;

      25 = 5 * 5 ,即25有两个5 ;100 = 5 * 5 * 4 ,即100有两个5 ;

    125 = 5 * 5 * 5 ,即125有三个5 ;625 = 5 * 5 * 5 * 5 ,即625有四个5

(2)设5的 x 次方等于m,找到不大于数值N的那个最大的m值,也就确定了x和集合{1,2,3,.......,x}

(3)N 除以 (5的一次方),结果取整,假设为 a1

  N  除以 (5的二次方),结果取整,假设为 a2

          N  除以 (5的三次方),结果取整,假设为 a3

  类似地,直到

 N  除以 (5的 x 次方),结果取整,假设为 aX,

         则最后的结果为 (a1 + a2 + a3 + ..... + aX)  个零。

下面以2016的阶乘有多少个零 为例:

(1)5的四次方等于 625 <2016 , 5的五次方等于 3125 > 2016

(2)5  1 ~ 2016 中 是5 的倍数的数 有 403 个   (5 * 2 = 10)

  25 = 5 * 5 1 ~ 2016 中 是25 的倍数的数 有80 个   (25 * 4 = 100)

125 = 5 * 5 * 51 ~ 2016 中 是125 的倍数的数 有16个
 (125 * 8 = 1000)

 625 = 5 * 5 * 5  * 5 1 ~ 2016 中 是625 的倍数的数 有3个
   (625 * 16 = 10000)

(3)最后的结果为 : 403 + 80 + 16 + 3 = 502 (个)
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  行测数字题 阶乘