白皮书 阶乘的精确度(大数阶乘)
发布时间:2021-01-08 09:27:33 所属栏目:大数据 来源:网络整理
导读:???????????? 题目: 输入不超过1000的正整数n,输出n!=1x2x3···xn的精确结果。 ???????????? 样例输入: 30 ??????????? 样例输出: 265252859812191058636308480000000 分析:先存个 大的数组求a[3000],让a[0]保存结果的个位(方便进位) 白皮书代码(
|
???????????? 题目:输入不超过1000的正整数n,输出n!=1x2x3···xn的精确结果。 ???????????? 样例输入:30 ??????????? 样例输出:265252859812191058636308480000000
白皮书代码(看啦好几遍才看懂QAQ) #include<stdio.h>
#include<string.h>
#define N 3000
int a[N];
int main()
{
int i,j,n;
while(~scanf("%d",&n)){
memset(a,sizeof(a));
a[0]=1;
for(i=2;i<=n;i++){//乘以i
int c=0;
for(j=0;j<N;j++){
int s=a[j]*i+c;
a[j]=s%10;
c=s/10;
}
}
for(j=N-1;j>=0;j--)
if(a[j])
break;
for(i=j;i>=0;i--)
printf("%d",a[i]);
printf("n");
}
return 0;
}
(编辑:52站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |

