阶乘的0 【南阳 oj 题目84】
2017-08-11 09:15
225 查看
点击打开链接
描述
计算n!的十进制表示最后有多少个0
输入第一行输入一个整数N表示测试数据的组数(1<=N<=100)
每组测试数据占一行,都只有一个整数M(0<=M<=10000000)
输出输出M的阶乘的十进制表示中最后0的个数
比如5!=120则最后的0的个数为1
样例输入
样例输出
题解:本题求n!有几个零,其实就是求n!可以分解出几个5。
#include <iostream>
#include <cstdio>
#include <cmath>
using namespace std;
int main()
{
int t;
long long a,sum;
while(cin>>t)
{
while(t--)
{ sum=0;
cin>>a;
for(int i=0;;i++)
{ sum=sum+a/5;
if(a/5>=5)
a=a/5;
else
break;
}
cout<<sum<<endl;
}
}
return 0;
}
描述
计算n!的十进制表示最后有多少个0
输入第一行输入一个整数N表示测试数据的组数(1<=N<=100)
每组测试数据占一行,都只有一个整数M(0<=M<=10000000)
输出输出M的阶乘的十进制表示中最后0的个数
比如5!=120则最后的0的个数为1
样例输入
6 3 60 100 1024 23456 8735373
样例输出
0 14 24 253 5861 2183837
题解:本题求n!有几个零,其实就是求n!可以分解出几个5。
#include <iostream>
#include <cstdio>
#include <cmath>
using namespace std;
int main()
{
int t;
long long a,sum;
while(cin>>t)
{
while(t--)
{ sum=0;
cin>>a;
for(int i=0;;i++)
{ sum=sum+a/5;
if(a/5>=5)
a=a/5;
else
break;
}
cout<<sum<<endl;
}
}
return 0;
}
相关文章推荐
- 南阳oj 题目56 阶乘因式分解(一)
- 南阳OJ 题目56-阶乘因式分解(一)
- 阶乘因式分解(二)【南阳oj 题目70】
- 南阳OJ 题目65:另一种阶乘问题
- 南阳oj 题目65 另一种阶乘问题
- 南阳oj 题目25 A Famous Music Composer
- 南阳oj 题目276 比较字母大小
- 南阳 oj 语言入门 Coin test 题目204
- 南阳oj 题目722 数独
- 南阳oj 题目2—括号配对问题
- 南阳OJ 题目77:开灯问题
- 南阳题目56-阶乘因式分解(一)
- 九度oj 题目1076:N的阶乘
- 南阳oj 题目24 素数距离问题
- 南阳oj 题目169 素数
- 南阳oj NYOJ 寻找最大数 题目236
- 南阳oj 语言入门 精挑细选 题目 263
- 南阳OJ 28:大数阶乘
- 南阳OJ之语言入门 题目39 - 水仙花数
- 阶乘之和||南阳OJ