1 solutions
-
0
这道题要求维护最后五位数,我们只需要对答案取模100000即可,在Python中可以直接对答案取模,而C++没有自带高精度,只能在for循环的每一步都进行取模。 C++核心代码:
int ans = 1;// 初始化为1 for (int i = 2; i <= 2021; ++i) if (i % 2 == 1)// 别忘了双阶乘的定义 ans = ans * i % 100000; // 累乘的同时取模防止溢出 cout << ans;Python核心代码
ans for i in range(2, 2022): if i % 2 == 1:# 双阶乘的定义 ans = ans * i# 累乘法 print(ans % 100000)# 直接输出取模的答案取出一个数字的最后n位是一个技巧,只需要对这个数字取模10的n次方就可以。
- 1
Information
- ID
- 15236
- Time
- 1000ms
- Memory
- 256MiB
- Difficulty
- 2
- Tags
- # Submissions
- 54
- Accepted
- 10
- Uploaded By