【题目描述】
输入n,计算S=1!+2!+3!+…+n!的末6位(不含前导0)。n≤106, n!表示前n个正整数之积。
【输入】
输入n。
【输出】
如题述,之和。
【输入样例】
10
【输出样例】
37913
【提示】
【数据范围】
对于所有数据,1≤n≤999999。
【题解代码】
#include<bits/stdc++.h>
using namespace std;int main()
{int n; cin >> n;int sum = 1, pre = 1;for (int i = 2; i <= n; i++){pre *= i % 1000000;pre %= 1000000;sum += pre % 1000000;sum %= 1000000;}cout << sum;return 0;
}