Math172FactorialTrailingZeroes

思路

  • I think about 2*5 and 10 can create 10, but I ignore all 10 are also realted with 5, which means if 10%5 == 0, then one trailing 0 will be created.
  • I do think we need 5 and even number, and even number is always ample because every two even comes a 5 or 10
  • 正确思路

    Because all trailing 0 is from factors 5 * 2.


But sometimes one number may have several 5 factors, for example, 25 have two 5 factors, 125 have three 5 factors. In the n! operation, factors 2 is always ample. So we just count how many 5 factors in all number from 1 to n.

计算复杂度

这个讲解很好https://discuss.leetcode.com/topic/6848/my-explanation-of-the-log-n-solution
* Q:can u explain why is this solution log(n) instead of O(n)?
* A: any time your solution is reducing by a factor greater than 1 it is log time with the log base being your factor. In this case you are reducing by a factor of 5 each loop so you have O(log5 N) <- that is meant to be “log N with base 5”. You could be reducing by a factor of 2 or 10 or 50 that is still log time.

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值