给定一个整数n,返回n!中的尾随零数。
来源:互联网 发布:网络射击类游戏排行 编辑:程序博客网 时间:2024/06/06 14:08
本题源自leetcode 172
=------------------------------------------------------------------------------
思路:求0来自10。10来自2 x 5,我们需要考虑所有5和2的产品。喜欢4×5 = 20 ...所以,如果我们把所有5的数字作为一个因子,我们将有足够多的偶数与他们配对,得到10的因子。
1到23之间有多少个5的倍数?有5,10,15和20,是5的四倍。与偶数因素2相配,这就是四个因子10,所以:23!有4个零。
例二
从1到100的数字有多少个5?因为100÷5 = 20,所以在1到100之间有5个20的倍数。但是等待,实际上25是5×5,因此25的每个倍数具有5的额外因子,例如25×4 = 100,引入了额外的零。那么,我们需要知道有多少25的倍数在1到100之间呢?由于100÷25 = 4,因此在1到100之间有四个倍数25。最后,我们得到20 + 4 = 24的尾数为100!
上面的例子告诉我们,我们需要关心5,5×5,5×5×5,5×5×5×5 ....
代码:
int trailingZeroes(int n) { int res = 0; while(n){ n /= 5; res += n; } return res; }
阅读全文
0 0
- 给定一个整数n,返回n!中的尾随零数。
- 请设计一个算法,计算n的阶乘有多少个尾随零。 给定一个int n,请返回n的阶乘的尾零个数。保证n为正整数
- 求N!中最后一个非零数
- 给定一个整数n,和k,返回包含k个所有所有子数组
- 346/5000 给定一个n个整数的数组S,在S中找到三个整数,使得总和最接近给定数量的目标。 返回三个整数的和。
- leetcode-java.T016_threeSumClosest---给定包含n个整数数组S,找到S中的三个整数,从而使之和最接近给定的数,返回三个整数的总和.
- 给定一个整数N,那么N的阶乘N!末尾有多少个零呢?
- PKU1401:给定一个整数N,那么N的阶乘N!末尾有多少个0。
- 给定一个整数N,那么N的阶乘N!末尾有多少个0
- 给定一个整数N,那么N的阶乘N!末尾有多少个0呢
- 给定一个整数N,那么N的阶乘N!末尾有多少个0呢?
- 给定一个整数N,求N的阶乘N!末尾有多少个0?
- 给定一个整数N,那么N的阶乘N!末尾有多少个0呢?
- 给定一个整数N,那么N的阶乘N!末尾有多少个零呢?
- 给定一个整数N,那么N的阶乘N!末尾有多少个0
- 给定一整数 n 产生一个 1 到 n*n的螺旋形数组
- 给定一个整数N 按照顺序给出所有位数为N的整数
- 给定一个整数n,判断这个整数是否是2的N次方
- nmap帮助文档-参数说明
- 图片的三级缓存
- Java Long保留小数操作
- 设计模式---策略模式
- 比特币市值远超Visa,使其望尘莫及
- 给定一个整数n,返回n!中的尾随零数。
- 比特币狂热:“加密货币”成为日本十大热词之一
- 俄罗斯强化加密货币监管
- java虚拟机之三--理解Java虚拟机体系结构
- 调查:韩国的比特币意识高于日本和美国
- AMD首席执行官苏姿丰:公司热心参与区块链
- System.out.println对线程安全的影响
- 华尔街众银行反对推出比特币期货合约
- 英国财政部计划在2018年底实施加密货币监管法规