dev C++ 75,求救
查看原帖
dev C++ 75,求救
381681
Hz138588楼主2021/2/17 16:08

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;
}
2021/2/17 16:08
加载中...