求N!末尾0的个数

思路:N!=(1 * 2 * 3 * 4 * 5 * 6 *、、、N)=5 * 5 * 5 * 5 *(1、2、、、、、)

1234!的尾数0的个数计算如下:
1234/5=246
246/5=49
49/5=9
9/5=1
1/5=0
246+49+9+4+0=305
所以1234!的尾数0的个数第305
原理:(1)行得到的是1~1234中因子含有5的个数【即 5*(1 * 2 * 3 * 4 * 5 * 、、、246)在1乘到1234中,5、10、15、20、25、30、、、这些数能被5整除,可以产生0,总共有246个】
(2)行得到的是1~1234中因子含有25的个数或1 ~ 246中因子含有5的个数【即5 * 5( 1 * 2 * 3 * 4 * 、、、49),在1乘到246中,25,50,75,100、、、这些数能被25整除,可以产生1个0,总共有49个】
(3)行得到的是1~1234中因子含有125的个数或1 ~ 49中因子含有5的个数即5 * 5 * 5(1、2、3、4、5、6、7、8、9),在1乘到49中,125、250、、、这些数能被125整除,又可以产生1个0,总共有9个】
(4)、、、
(5)、、、

sdibt oj 1232

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值