WA了最后一个点,求救
#include<iostream>
#include<cstdio>
#include<cmath>
using namespace std;
int jies[103]={};
int S[201]={};
void jc(int a[],int b){
a[0]=1;a[1]=1;
for(int i=1;i<=b;i++){
for(int j=1;j<=a[0];j++){
a[j]*=i;
}
a[0]+=2;
for(int j=1;j<=a[0];j++){
a[j+1]+=a[j]/10;
a[j]%=10;
}
}
}//阶乘
void add(const int a[],int b[]){
for(int i=1;i<=max(a[0],b[0]);i++){
b[i]+=a[i];
}
for(int j=1;j<=b[0];j++){
b[j+1]+=b[j]/10;
b[j]%=10;
}
b[0]+=1;
}//加法
int main(void){
int n;
S[1]=0;S[0]=1;
scanf("%d",&n);
for(int i=1;i<=n;i++){
jc(jies,i);
add(jies,S);
for(int j=jies[0];j>=0;j--){
jies[j]=0;
}//重新初始化
}
for(int i=S[0];S[i]==0;i--)S[0]=i;
S[0]--;
for(int i=S[0];i>0;i--)printf("%d",S[i]);
return 0;
}