paste bin

malic
C++
#include <cstdio>
#define MAXN 3000
int digits[MAXN];

void printBigInt()
{
    int prefixZero = true;
    for(int i = MAXN-1;i>=0;i--)
    {
        if(digits[i]!=0)
        {
            prefixZero=false;
        }
        if(prefixZero)
        {
            continue;
        }
        printf("%d",digits[i]);
    }
    printf("\n");
    return;
}

int main(void)
{
    int i,d,N;
    scanf("%d",&N);
    digits[0] = 1;
    for(i=1;i<=N;i++)
    {
        for(d=0;d<MAXN;d++)
        {
            digits[d] = digits[d]*i;
        }
        for(d=0;d<MAXN;d++)
        {
            if(digits[d]>9)
            {
                digits[d+1] += digits[d]/10;
                digits[d] = digits[d]%10;
            }
        }
    }
    printBigInt();
    return 0;
}

2020 C2QF

fork this code