spoj 24

大数 
#include<cstdio>
#include<cstdlib>
#include<cstring>
#include<algorithm>
#include<queue>

using namespace std;
int a[2000];
int main()
{
    int t;
    scanf("%d",&t);
    while(t--)
    {
        int n;
        scanf("%d",&n);
        memset(a, 0, sizeof(a));
        a[0]  = 1;
        for(int i = 2; i <= n; i++)
        {
            int c = 0;
            for(int j = 0; j < 2000; j++)
            {
                int s = a[j] * i + c;
                a[j] = s%10;
                c = s/10;
            }
        }
        int k;
        for(k = 1999; k >= 0; k--)
            if(a[k]) break;
        for(int i = k; i >= 0; i--)
            printf("%d",a[i]);
        puts("");
    }
    return 0;
}

posted @ 2013-08-13 20:12  xlc2845  阅读(81)  评论(0)    收藏  举报