50分求调(玄关)
查看原帖
50分求调(玄关)
817416
fsc0190楼主2024/4/16 17:03
#include<bits/stdc++.h>
using namespace std;
int n;
int a[101] = {0},s[101] = {0};
void cnt(int x)
{
    int sum = 0;
    for (int i=100;i>=0;i--)
    {
        a[i] = a[i]*x+sum;
        sum = a[i]/10;
        a[i] = a[i]%10;
    }
}
void cmp()
{
    int sum = 0;
    for (int i=100;i>=0;i--)
    {
        s[i] = s[i]+a[i]+sum;
        sum = s[i]/10;
        s[i] = s[i]%10;
    }
}
void num()
{
    int sum = 0;
    for (int i=0;i<=100;i--)
    {
        if (s[i] != 0)
        {
            sum = i;
            break;
        }
    }
    for (int i=sum;i<=100;i++)
    {
        printf("%d",s[i]);
    }
}
int main()
{
	cin >> n;
    s[100] = 1;
    a[100] = 1;
	for (int i=2;i<=n;i++)
	{
		cnt(i);
        cmp();
	}
	num();
    return 0;
}
2024/4/16 17:03
加载中...