Cod sursa(job #277723)
Utilizator | Dragos Oprica DraStiK | Data | 11 martie 2009 21:12:52 |
---|---|---|---|
Problema | Patrate2 | Scor | 100 |
Compilator | cpp | Status | done |
Runda | Arhiva de probleme | Marime | 0.55 kb |
#include <stdio.h>
#define DIM 5000
int v[DIM];
int n;
void mult (int a[DIM],int b)
{
int i,t=0;
for (i=1; i<=a[0] || t; ++i, t/=1000000)
a[i]=(t+=a[i]*b)%1000000;
a[0]=i-1;
}
int main ()
{
freopen ("patrate2.in","r",stdin);
freopen ("patrate2.out","w",stdout);
int i;
scanf ("%d",&n);
v[0]=v[1]=1;
for (i=1; i<=n*n; ++i)
mult (v,2);
for (i=1; i<=n; ++i)
mult (v,i);
printf ("%d",v[v[0]]);
for (i=v[0]-1; i; --i)
printf ("%.6d",v[i]);
return 0;
}