求助
查看原帖
求助
672757
封禁用户楼主2024/7/3 17:59
#include<bits/stdc++.h>
using namespace std;
int n,ss,sc;
int s[5000],c[5000];
void jsc(int j)
{
	for(int i=1;i<=j;i++)
	{
		for(int t=1;t<=sc;t++)
		{
			c[t]*=i;
		}
	}
}
void jsj()
{
	for(int i=1;i<=sc;i++)
	{
		s[i]+=c[i];
	}
	ss=max(sc,ss);
	for(int i=1;i<=ss;i++)
	{
		if(s[i]<10)
		{
			continue;
		}
		else
		{
			s[i+1]+=(s[i]/10);
			s[i]/=10;
		}
	}
	for(int i=ss+1;;i++)
	{
		if(s[i]<10)
		{
			ss=i;
			break;
		}
		else
		{
			s[i+1]+=(s[i]/10);
			s[i]/=10;
		}
	}
}
int main()
{
	cin>>n;
	for(int i=1;i<=n;i++)
	{
		memset(c,0,sizeof(c));
		sc=c[1]=1;
		jsc(i);
		jsj();
	}
	for(int i=ss;i>=1;i--)
	{
		if(s[i]>0)
		{
			ss=i;
			break;
		}
	}
	for(int i=ss;i>=1;i--)
	{
		cout<<s[i];
	}
	return 0;
 } 

0分

2024/7/3 17:59
加载中...