计算阶乘后的0

refer: https://leetcode.cn/problems/factorial-trailing-zeroes/description/?envType=study-plan-v2&envId=top-interview-150

给你一个整数数组 nums ,除某个元素仅出现 一次 外,其余每个元素都恰出现 三次 。请你找出并返回那个只出现了一次的元素。

你必须设计并实现线性时间复杂度的算法且使用常数级空间来解决此问题。

示例 1:

输入:nums = [2,2,3,2]
输出:3

示例 2:

输入:nums = [0,1,0,1,0,1,99]
输出:99

使用go来写的就是这样,知道逻辑即可,主要是考虑5这个质因子。

func trailingZeroes(n int) int {
  count := 0
  for n > 0 {
      n /= 5
      count += n
  }
  return count
}

你可能感兴趣的:(算法)