Cod sursa(job #395893)
Utilizator | Data | 13 februarie 2010 23:27:44 | |
---|---|---|---|
Problema | Patrate2 | Scor | 90 |
Compilator | cpp | Status | done |
Runda | Arhiva de probleme | Marime | 0.48 kb |
#include<cstdio>
int n,sol[100010];
void mult(int H[], int X)
{
int i;
int T=0;
for (i=1;i<=H[0];i++)
{
H[i]=H[i]*X+T;
T=H[i]/10;
H[i]=H[i]%10;
}
while (T)
{ H[++H[0]]=T%10;
T/=10;
}
}
int main()
{
int i;
freopen("patrate2.in","r",stdin);
freopen("patrate2.out","w",stdout);
scanf("%d",&n);
sol[0]=1;
sol[1]=1;
for(i=1;i<=n*n;i++)
mult(sol,2);
for(i=1;i<=n;i++)
mult(sol,i);
for(i=sol[0];i>=1;i--)
printf("%d",sol[i]);
return 0;
}