Description
输入n,计算S=1!+ 2!+…+ n!的末6位(不含前导0)。这里,n!表示前n个正整数之积。
Input
输入n,,n≤ 106。
Output
输出S的末6位(不含前导0)。
Sample Input
10
Sample Output
37913
#include<stdio.h>
int main()
{
int i=1,n,s=1,sum=0;
scanf("%d",&n);
while(i<=n){
s*=i;
s%=1000000;
sum+=s;
i++;
}
sum%=1000000;
printf("%d\n",sum);
return 0;
}

本文介绍了一个算法问题:给定整数n,计算从1到n的所有整数阶乘之和S,并输出S的末6位数字(不包括前导0)。通过循环迭代的方式计算阶乘和并取模,确保结果只保留最后六位。
524

被折叠的 条评论
为什么被折叠?



