题目描述
用高精度计算出S=1!+2!+3!+⋯+n!(n ≤50)。
其中“!”表示阶乘,例如:5!=5×4×3×2×1。
输入格式
一个正整数 n。
输出格式
一个正整数 S,表示计算结果。
输入输出样例
输入
3
输出
9
说明/提示
【数据范围】
对于 100 %100% 的数据,1≤n≤50。
#include <algorithm>
#include <iostream>
using namespace std;
int n;
int sum[505],mul[505];
void multiply(int k)
{
int x=0;
for(int i=1;i<=mul[0];i++)
{
mul[i]=mul[i]*k+x;
if(mul[i]>9)
{
x=mul[i]/10;
mul[i]%=10;
mul[0]=max(mul[0],i+1);
}
else x=0;
}
}