51nod 1003 阶乘后面0的数量
2017-08-28 21:17
267 查看
1003 阶乘后面0的数量
基准时间限制:1 秒 空间限制:131072 KB 分值: 5 难度:1级算法题
收藏
关注
n的阶乘后面有多少个0?
6的阶乘 = 1*2*3*4*5*6 = 720,720后面有1个0。
Input
Output
Input示例
Output示例
题意:中文
思路:末尾零的个数是由2和5组成的,2的
e5c7
数量明显很多,计算5的数量就是答案
有效求因子5的个数的方法是:n/(5^i),然后求和
#include <iostream>
#include<math.h>
#include<algorithm>
#include<string.h>
using namespace std;
typedef long long ll;
int main()
{
int fivePow[]={1,5,25,125,625,3125,15625,78125,390625,1953125,9765625,48828125,244140625};
int n;
while(cin>>n)
{
int sum=0;
for(int i=1;i<13;i++)
{
sum+=n/fivePow[i];
}
cout<<sum<<endl;
}
return 0;
}
基准时间限制:1 秒 空间限制:131072 KB 分值: 5 难度:1级算法题
收藏
关注
n的阶乘后面有多少个0?
6的阶乘 = 1*2*3*4*5*6 = 720,720后面有1个0。
Input
一个数N(1 <= N <= 10^9)
Output
输出0的数量
Input示例
5
Output示例
1
题意:中文
思路:末尾零的个数是由2和5组成的,2的
e5c7
数量明显很多,计算5的数量就是答案
有效求因子5的个数的方法是:n/(5^i),然后求和
#include <iostream>
#include<math.h>
#include<algorithm>
#include<string.h>
using namespace std;
typedef long long ll;
int main()
{
int fivePow[]={1,5,25,125,625,3125,15625,78125,390625,1953125,9765625,48828125,244140625};
int n;
while(cin>>n)
{
int sum=0;
for(int i=1;i<13;i++)
{
sum+=n/fivePow[i];
}
cout<<sum<<endl;
}
return 0;
}
相关文章推荐
- 51Nod 1003 阶乘后面0的数量(数学,思维题)
- 51nod_1003 阶乘后面0的数量(求N!中5的个数,数论)
- 51nod 1003 阶乘后面0的数量 (5贡献的次数)
- 51nod 1003 阶乘后面0的数量【数学】
- 51nod-1003 阶乘后面0的数量
- 51nod 1003 阶乘后面0的数量
- 51nod 1003 阶乘后面0的数量
- 51Nod——1003 阶乘后面0的数量
- 51Nod-1003 阶乘后面0的数量【分析思维】
- 4000 51Nod 1003 阶乘后面0的数量
- 51Nod-1003-阶乘后面0的数量
- 51Nod 1003 阶乘后面0的数量
- 51nod 1003 阶乘后面0的数量
- 51nod- 1003 阶乘后面0的数量(求5的个数)
- 51nod 1003 阶乘后面0的数量
- 51nod 1003 阶乘后面0的数量
- 51nod 1003 阶乘后面0的数量
- 51nod 1003 阶乘后面0的数量
- 1003 阶乘后面0的数量 51NOD
- 51Nod 1003 . 阶乘后面0的数量