最最最简单的无脑乘法

#include <iostream>
#include <vector>
using namespace std;

int n;

vector<int> mul(vector<int> &A, int b)
{
    vector<int> C;
    
    int t = 0;
    for (int i = 0; i < A.size() || t; ++i)
    {
        if (i < A.size())
            t += A[i] * b;
        C.push_back(t % 10);
        t /= 10;
    }
    
    while (C.size() > 1 && C.back() == 0)
        C.pop_back();
    return C;
}

int main()
{
    while (cin >> n)
    {
        vector<int> res;
        res.push_back(1);
        for (int i = 1; i <= n; ++i)
            res = mul(res, i);
        for (int i = res.size() - 1; i >= 0; --i)
            cout << res[i];
        cout << endl;
    }
    return 0;
}