力扣【阶乘问题】leetcode-172、阶乘后的零;leetcode-793、阶乘后K个零;

题目一:172、阶乘后的零

给定一个整数 n,返回 n! 结果中,尾数中零的数量

举一个栗子:6!=【 1 * 2 * 3 * 4 * 5 * 6 】

6!= 720

所以的话就是返回1,因为720 后面只有一个0

1、那么应该怎么做呢?

乍一看,感觉问题很复杂,其实只要冷静下来,一步一步简化,结果是十分明了的~

第一个想法:首先把阶乘算出来,然后从前到后每一位都遍历吗?

这个方法肯定是不可取的,复杂度太高了。

2、我们只需要简单分析一下

题目要求看 0 的数量 ,

1、末尾的0 是从哪里来的?

肯定是乘以 10 得来的!

2、10 是从哪里来的?

10 = 2 * 5;也就是说,10 只能从2 和5 相乘得到

只看 2 和 5 出现的次数,因为只有2 和 5 才会产生 10 ,才会有 0 的呀!

当然,这里要多说一嘴,0 就不要考虑了,因为 0&

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值