阶乘之和
时间限制(普通/Java):1000MS/3000MS 运行内存限制:65536KByte
总提交:1903 测试通过:434
总提交:1903 测试通过:434
描述
输入n,计算S=1!+ 2!+…+ n!的末6位(不含前导0)。这里,n!表示前n个正整数之积。
输入
输入n,,n≤ 106。
输出
输出S的末6位(不含前导0)。
样例输入
10
样例输出
37913
题目来源
刘汝佳《算法竞赛入门经典》
#include<stdio.h>
//n>=24后保持一致
//if(n>=24) printf("940313\n");
int main()
{
int n, tmp = 1, ans = 0;
scanf("%d",&n);
for(int i=1;i<=n;i++)
{
tmp = (tmp*i) % 1000000;
ans += tmp;
ans %= 1000000;
}
printf("%d\n",ans);
return 0;
}