3 条题解
-
0
以下是C++版代码,轻松KO 详见代码
#include<iostream> using namespace std; typedef long long L; L s[10001], i, n, j, l; L a[10001], u;int main() {//基础定义 cin >> n;s[1] = l = 1;//输入,顺便初始化 for (i = 1;i <= n;i++) {//循环累加 for (j = 1;j <= l;j++) s[j] *= i;//阶乘计算 for (j = 1;j <= l;j++) { u = s[j] / 10; s[j] %= 10;//保留个位 s[j + 1] += u;//进位 }while (s[l + 1] > 0) l = l + 1;//长度增加 for (j = 1;j <= l;j++) {//累加 a[j] = a[j] + s[j];//相加 a[j + 1] += a[j] / 10;//进位 a[j] = a[j] % 10;//保留个位 }if (a[l + 1] > 0)l++;//长度增加 }for (i = l;i >= 1;i--)//倒序 cout << a[i];//输出 }
信息
- ID
- 2592
- 时间
- 1000ms
- 内存
- 128MiB
- 难度
- 10
- 标签
- 递交数
- 9
- 已通过
- 1
- 上传者