题目描述 求 (1! + 2! + 3! + ...... n!) % 998244353. n <= 1000000.运用c语言解决
时间: 2023-11-15 10:02:46 浏览: 461
1158 求1+2+3+....cpp
5星 · 资源好评率100%
这道题目要求计算1到n的阶乘的和,并对998244353取模。可以使用循环来计算每个数的阶乘,并将其加入到总和中。需要注意的是,由于n的范围很大,需要使用long long类型来存储阶乘和总和,并在计算阶乘时进行取模操作,以避免溢出。以下是一个C语言的实现代码:
```
#include <stdio.h>
#define MOD 998244353
int main() {
int n;
long long sum = 0, fact = 1;
scanf("%d", &n);
for (int i = 1; i <= n; i++) {
fact = (fact * i) % MOD; sum = (sum + fact) % MOD;
}
printf("%lld\n", sum);
return 0;
}
```
阅读全文