求调 0分 AC必关
查看原帖
求调 0分 AC必关
1344842
shilige楼主2025/1/20 20:12
#include<bits/stdc++.h>
using namespace std;
long long n,b[11000]={1},a[11000]={1},k=100;
int main()
{
	cin>>n;
	for(int i=2;i<=n;i++) 
	{
		for(int j=0;j<100;j++) a[j]*=i;//高精乘
		for(int j=0;j<100;j++) 
			if(a[j]>9) a[j+1]+=a[j]/10,a[j]%=10;//进位
		for(int j=0;j<=100;j++)
		{
			b[j]+=a[j];
			if(b[j]>9) b[j+1]+=a[j]/10,b[j]%=10;
		}//累加答案
	}
	while(b[k]==0) k--;//删除前导零
	for(int i=k;i>=0;i--) cout<<b[i];//输出
	return 0;
}
2025/1/20 20:12
加载中...