Cod sursa(job #177016)

Utilizator firewizardLucian Dobre firewizard Data 12 aprilie 2008 04:07:11
Problema Patrate2 Scor 50
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.88 kb
#include <stdio.h>
int n;
long long i,s[300],p[300],baza=1000000,j,c,k,x;
int main()
{
    freopen ("patrate2.in","r",stdin);
    freopen ("patrate2.out","w",stdout);
    scanf("%d",&n);
    p[0]=1;p[1]=1;
    for(i=1;i<=n*n;i++)
    {
    j=0;
    while(p[j])
    {
     j++;
     p[j]=p[j]*2+c;
     c=p[j]/baza;
     p[j]%=baza;
    }
    }
    c=0;
    for(i=1;i<=n;i++)
    {
    j=0;
    while(p[j])
    {
    j++;
    p[j]=p[j]*i+c;
    c=p[j]/baza;
    p[j]%=baza;
    }
    }
    
    for(i=55;i>=1;i--)   
    if(p[i]!=0)   
    {printf("%lld",p[i]);break;}   
    i--;   
    for (j=i;j>=1;--j)   
        {   
        if(p[j]!=0){         
        x=p[j];c=0;   
        while(x!=0){c++;x/=10;}   
        for(x=1;x<=6-c;++x)printf("0");   
        printf("%lld",p[j]);}   
        else printf("000000");   
        }   
    return 0;
}