首页 > 代码库 > 阶乘0问题
阶乘0问题
Problem 1 - Time Limit : 1s Memory Limit : 512M Code Limit : 128K
Description
我们定义阶乘N!=1×2×3×...×N,并且0!=1。
现在我们想知道对于N!的阶乘结尾总共有多少个0。
Input
一行一个整数N。
Output
0的个数。
Sample Input
11
Sample Output
2
Hint
11!=39916800
Data Limit
10% N≤40
30% N≤10^6
60% N≤10^9
100% N≤10^18
Answer
一个2*5就可以得到一个0
但2有很多,所以我们只需要算5有多少个
这里采用的是辗转相除
求出5的个数
/*Never stop*/ #include<iostream> using namespace std; int main() { long long n,ans=0; cin>>n; while(n) { ans+=n/5; n/=5; } cout<<ans; return 0; }
这样就能求出结尾0的个数
初次发表,请多谅解!
阶乘0问题
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。