P1059 阶乘问题
备考心情
发布于2020年3月4日 21:24
阅读数 12.0k
1.题目中12的阶乘非零数位为6,应该是5才对吧
2.麻烦大佬帮我看一看我的代码哪里错了,输入12是5,但输入10000000为0????
#include <iostream>
using namespace std;
int main()
{
long long n,m=1,i,count=0;
cin>>n;
for(i=2;i<=n;i++)
m*=i;
do
{
if(m%10!=0)
count++;
m=m/10;
}while(m!=0);
cout<<count;
return 0;
}
登录后发布评论
对于第1个问题,建议用计算机算一下,另外建议代码可以用代码插件,语法高亮方便大家阅读代码,倒数第二个就是。
对于第2个问题:long long的极限在10^18左右,而100!的比long long的极限大了,所以解法是不可行的