Pagini recente » Diferente pentru implica-te/arhiva-educationala intre reviziile 64 si 63 | Cod sursa (job #2901856) | Cod sursa (job #2434128) | Cod sursa (job #509980) | Cod sursa (job #1524064)
#include <cstdio>
using namespace std;
const int D=40000;
const int B=10000;
int a[D];
void prod(int v[],int val)
{ int i,r=0;
for(i=1;i<=v[0] || r; ++i)
{ v[i]=(val*v[i]+r);
r=v[i]/B;
v[i]=v[i]%B;
}
v[0]=i-1;
}
int main()
{ freopen("patrate2.in","r",stdin);
freopen("patrate2.out","w",stdout);
int n,i;
a[0]=a[1]=1;
scanf("%d",&n);
for(i=2;i<=n;++i) prod(a,i);
for(i=1;i<=n*n;++i) prod(a,2);
printf("%d",a[a[0]]);
for(i=a[0]-1;i;--i)
printf("%04d",a[i]);
return 0;
}