题目描述

设计一个算法,算出 n 阶乘有多少个尾随零。

示 例

示例 1:输入: 3
输出: 0
解释: 3! = 6, 尾数中没有零。示例 2:输入: 5
输出: 1
解释: 5! = 120, 尾数中有 1 个零.

说明: 你算法的时间复杂度应为 O(log n) 。

解题思路

第一层:数尾数有几个零实际上是看能被几个10整除
第二层:能被几个10整除实际上是看有几个因子5和2
第三层:有几个因子5和2实际上是有几个因子5
第四层:看有几个因子5直接n/5
第五层:在第四层每个25不止一个五,只算了一次,再加上n/25
第六层:每个125不止两个5,只算了两次,再加上n//125
以此类推,直到n

代码

int trailingZeroes(int n){int count=0;for(int i=1;pow(5,i)<=n;i++){count+=(int)(n/pow(5,i));}return count;}

链接

力扣面试题16.05.阶乘尾数相关推荐

  1. 程序员面试金典 - 面试题 16.05. 阶乘尾数(5的因子)

    1. 题目 设计一个算法,算出 n 阶乘有多少个尾随零. 示例 1: 输入: 3 输出: 0 解释: 3! = 6, 尾数中没有零.示例 2: 输入: 5 输出: 1 解释: 5! = 120, 尾数 ...

  2. 力扣 面试题 10.11. 峰与谷

    题目 在一个整数数组中,"峰"是大于或等于相邻整数的元素,相应地,"谷"是小于或等于相邻整数的元素.例如,在数组{5, 8, 4, 2, 3, 4, 6}中,{ ...

  3. 力扣 面试题 17.09. 第 k 个数

    题目 有些数的素因子只有 3,5,7,请设计一个算法找出第 k 个数.注意,不是必须有这些素因子,而是必须不包含其他的素因子.例如,前几个数按顺序应该是 1,3,5,7,9,15,21. 示例 输入: ...

  4. 力扣 面试题 17.14. 最小K个数

    题目 设计一个算法,找出数组中最小的k个数.以任意顺序返回这k个数均可. 示例 输入: arr = [1,3,5,7,2,4,6,8], k = 4 输出: [1,2,3,4] 来源:力扣(LeetC ...

  5. 力扣打卡(16):回溯算法:心静下来刷题。静心方可成事

    10.13lc 今日看了<图解网络>的 tcp 比较深奥 没有看完.... 刷了几道题. 412. Fizz Buzz - 力扣(LeetCode) (leetcode-cn.com) 每 ...

  6. 力扣面试题 01.08. 零矩阵

    编写一种算法,若M × N矩阵中某个元素为0,则将其所在的行与列清零 代码一思路: 第一次遍历时记录,用两个布尔类型数组标记行和列中是否有0元素: 第二次遍历时置零 class Solution {p ...

  7. 力扣面试题 01.07. 旋转矩阵

    给你一幅由 N × N 矩阵表示的图像,其中每个像素的大小为 4 字节.请你设计一种算法,将图像旋转 90 度. 不占用额外内存空间能否做到? 代码一 思路:对于矩阵中第 ii 行的第 jj 个元素, ...

  8. 力扣剑指 Offer 05. 替换空格(JavaScript)

    扩大数组,定义双指针从后往前遍历,如果为空,则填入20% var replaceSpace = function(s) {//转化为数组let arr=Array.from(s)//计算空格数let ...

  9. 力扣 面试题46. 把数字翻译成字符串 dp

    https://leetcode-cn.com/problems/ba-shu-zi-fan-yi-cheng-zi-fu-chuan-lcof/ 思路:为了方便,我们把输入转换成一个字符串,并且下标 ...

最新文章

  1. C# 利用SharpPcap实现网络包捕获嗅探
  2. golang 生成 解析 json
  3. DIP第十章习题解答
  4. springMVC的@RequestParam是必须滴
  5. [收集]Sublime Text 3常用快捷键
  6. ARM中断分析之一:中断控制器和CPU、外设的关系
  7. 【Deep Learning】genCNN: A Convolutional Architecture for Word Sequence Prediction
  8. J2EE的核心API与组件
  9. 【pytorch】RuntimeError: 1only batches of spatial targets supported (3D tensors) but got targets of si
  10. idea代码自动格式化配置
  11. 如何快速深入理解监控知识? | 技术干货
  12. redis安装之yum安装
  13. 六、量子纠错码的构成法
  14. 5V单端差分信号编码器转脉冲24V电平集电极开路变送器
  15. ES6 极简教程(ES6 Tutorial) 文 / 东海陈光剑
  16. 利用出生年月日求年龄
  17. Java面试练习题(每天进步一点点)
  18. 我的一周re学习总结
  19. Read Committed
  20. 如何俘获一个 IT 男的心

热门文章

  1. matlab哈宁低通,Matlab实现电网谐波测量加窗插值算法.pdf
  2. easyx写登入界面_小白入门——easyx界面版“贪吃蛇”的C语言实现(详细)
  3. C# DataTable学习
  4. HDU 3359 高斯消元模板题,
  5. 一个轻量级javascript框架的设计模式
  6. A fully managed website and blog hosting platform
  7. 管理Shader——Shader概览
  8. 一些常用的辅助代码 (网络收藏)
  9. Hive常见的存储格式文件比较
  10. ElasticSearch核心基础之索引管理