N!的末尾有多少个0
N!的末尾有多少个0
已经很久没有打开过我的电脑的devC++了,而且可能有将近两年没有写过c++了,好怀念呀~
正好遇到一道题,看到了熟悉的C++代码,就来写一篇吧~
题目
50!的末尾有多少个0?
扩展:N!的末尾有多少个0?
思考
多数相乘末尾的0的个数 = 乘法中能够生成的10的个数
-> 10 = 2*5
-> 乘数里<2,5>的组合数
-> 连续的自然数中,2的倍数个数远大于5的倍数个数
-> 只需要求连续的N个数中能够生成5的数的个数
举例
50!的末尾有多少个0?
-> 1-50中能够生成5的数的个数:
1.首先,每5个数都能获得某个数是5的倍数,即有:5,10,15,20,25,30,35,40,45,50.
个数为:50/5
2. 其次,有一些数能够因式分解成2个5(在第一步算过一个5了):即25,50。
个数为: 50/5*5
4. 由于50以内的数不能因式分解成>=3个5,所以结束,结果为1和2步结果之和。
即结果为10+2=12.
代码
#include<iostream>
using namespace std;
int main()
{int n;cin>>n;int res=0;while(1){if(n<5){break;}res+=n/5;n=n/5;}cout<<res;return 0;
}
刚刚写代码的时候发现我之前某个时候因为电脑c盘内存不够把devC++卸载了,然后在在线编译器中写代码的时候,我真的真的好怀念啊,是熟悉的感觉,是DNA里的记忆吖~
要做一个永远都有情怀的程序员.
N!的末尾有多少个0相关推荐
- nefu 753 n!末尾有多少个0
Problem : 753 Time Limit : 1000ms Memory Limit : 65536K description 计算N!末尾有多少个0 input 输入数据有多组,每组1行,每 ...
- N的阶乘末尾有多少个0
例如:N = 5,N! = 120.末尾有1个0. 分析:想到这个问题,有人可能第一反应就是现求出N!,然后再根据求出的结果,最后得出N!的末尾有多少个0.但是转念一想,会不会溢出,等等. 其实,从& ...
- 每天一道LeetCode-----计算n的阶乘末尾有多少个0
Factorial Trailing Zeroes 原题链接Factorial Trailing Zeroes 计算n!(n的阶乘)末尾有多少个0 思路: 0实际上来源于10,而10来源于2×5,所以 ...
- 编程之美3——N!末尾有多少个0
因为n!是一个非常大的数,所以不能通过常规的方法,求出n!的值之后,再判断它的末尾有多少个0. 这里的关键就是,n!的末尾有多少个0,取决于n!中,质因数 5 的个数. 如:12!=479001600 ...
- 1*2*...*1000的末尾有多少个0?(Java实现)
/** * 算法描述: * 分解质因数,即: * 1*2*3*...*1000 = (2*5)*(2*5)*...*(2*5) *(没有匹配的2或5) //其实 ...
- 如何判断1024!末尾有多少个0
分析: 方法一:暴力法 简单的方法就是就算出1024!的值,然后判断末尾有多少个0.但是这种方法有两个非常大的缺点:第一算法效率非常低下:第二:当这个数字比较大的时候直接计算阶乘可能会导致数据溢出 ...
- 判断N!末尾有多少个0
问题:N的阶乘(N!)中的末尾有多少个0? 例如: N = 5,N! = 120.末尾有1个0. N = 10,N! = 3628800.末尾有2个0. 分析:看到这个问题,有人可能第一反应是先求出N ...
- 100 的阶乘末尾有多少个0?
本篇文章是在osChina的代码分享里下载下来的,这里把它整理一下. 前一段时间看到一个往年程序竞赛的题解, 有一个题目说的是求 100 的阶乘末尾有多少个 0. 题解中给出的讲解提到, 一个数 n ...
- 求100000000!末尾有多少个0
**@求100000000!末尾有多少个0 /求100000000!末尾有多少个0 两个数相乘怎么能得到0呢? 只能是25 因为2的个数要远远的多于5 所以说只需要数5的个数即可 */ #includ ...
- 【经典智力题】1024! 末尾有多少个0?——“计算阶乘末尾0的数量”问题引出
网上有这样一个广为流传的有趣问题: 1024! 末尾有多少个0? 相应的解法是: 末尾0的个数取决于乘法中因子2和5的个数.显然乘法中因子2的个数大于5的个数,所以我们只需统计因子5的个数. 是5的倍 ...
最新文章
- 后MATLAB时代的七种开源替代,一种堪称完美!
- 机器手臂(3):机械手臂底座
- SQL语句利用日志写shell
- Spring Boot 微信点餐开源系统
- STM32 串口ISP下载
- linux 更改ctime_Linux 的文件系统及文件缓存知识点整理
- WCF 客户端代理生成 通过SvcUtil.exe
- C51 汇编 双层循环延时代码
- php微信商户下载对账单,浅析微信支付:下载对账单和资金账单
- 博客园的积分原来是这样算的哦
- 【SVM预测】基于蝙蝠算法改进SVM实现数据分类
- 数据包络(DEA)分析法python实现
- java求水电费_基于jsp的水电费管理系统-JavaEE实现水电费管理系统 - java项目源码...
- three.js 05-06 之 CylinderGeometry 几何体
- CTU Open Contest 2019 J. Beer Vision
- Error in *** : subscript out of bounds
- HBuilder X 连接逍遥Android模拟器
- 简单易懂的并查集算法以及并查集实战演练
- JAVA经典算法大全
- IEEE Access 上岸指南,附含泪整理的 cover letter 、沟通邮件、终版文档等资料包
热门文章
- vue 多层双层全选_vue2.0 实现全选和全不选
- [Pytorch系列-33]:数据集 - torchvision与MNIST数据集
- Win10彻底关闭恢复功能,终极省流量设置
- 解决Port xxxx was already in use 端口被占用问题
- Error: listen EADDRINUSE: address already in use :::400
- Android studio中国象棋,下棋思路与代码实现
- 史上最厉害的拼音打字高手间的对话
- Xsocks 反弹代理s5
- 猎头职场:如何拒绝不合理的工作量
- 【渝粤教育】国家开放大学2018年春季 7067-22T (1)康复护理学 参考试题