Pagini recente » Cod sursa (job #876627) | Cod sursa (job #1528560) | Cod sursa (job #2874374) | Cod sursa (job #2051447) | Cod sursa (job #289693)
Cod sursa(job #289693)
#include<stdio.h>
long n,a[4005],i;
void inmult(long a[],long x)
{long t=0,cc,i;
for(i=1;i<=(a[0]+1)/2;++i){cc=a[i];a[i]=a[a[0]-i+1];a[a[0]-i+1]=cc;}
for(i=1;i<=a[0]||t;++i)
{t+=a[i]*x;
a[i]=t%10000;
t/=10000;}
a[0]=i-1;
for(i=1;i<=(a[0]+1)/2;++i){cc=a[i];a[i]=a[a[0]-i+1];a[a[0]-i+1]=cc;}
}
int main()
{
freopen("patrate2.in","r",stdin);
freopen("patrate2.out","w",stdout);
scanf("%ld",&n);
a[0]=1;
a[1]=1;
for(i=1;i<=n*n;++i)
inmult(a,2);
for(i=2;i<=n;++i)
inmult(a,i);
printf("%ld",a[1]);
for(i=2;i<=a[0];++i)
printf("%04ld",a[i]);
printf("\n");
return 0;
}