NOJ - 1093 阶乘之和

阶乘之和
时间限制(普通/Java) : 1000 MS/ 3000 MS 运行内存限制 : 65536 KByte
总提交 : 2288 测试通过 : 572
比赛描述
输入n,计算S=1!+ 2!+…+ n!的末6位(不含前导0)。这里,n!表示前n个正整数之积。

输入
输入n,,n≤ 106。

输出
输出S的末6位(不含前导0)。

样例输入
10

样例输出
37913

题目来源
刘汝佳《算法竞赛入门经典》

#include <iostream>
#include <cstdio>
using namespace std;
int main()
{
    int sum=1;
    int a=1;
    int n;
    scanf("%d",&n);
    for(int i=2;i<=n;i++)
    {
        a=a*i%1000000;
        sum=(sum+a)%1000000;
    }
    printf("%d",sum);
    return 0;
}

你可能感兴趣的:(NOJ - 1093 阶乘之和)