Pagini recente » CNRV - pregatire la info - Editia #3 | Cod sursa (job #1113249) | Cod sursa (job #800938) | Cod sursa (job #1669079) | Cod sursa (job #515866)
Cod sursa(job #515866)
#include <stdio.h>
int v[100001],b,i,j,n,t;
int main()
{
freopen("patrate2.in","r",stdin);
freopen("patrate2.out","w",stdout);
scanf("%d",&n);
v[0]=1;v[1]=1;
for (b=1;b<=n;++b)
{
t=0;
for (i=1;i<=v[0];i++)
{
v[i]=v[i]*b+t;
t=v[i]/10;
v[i]=v[i]%10;
}
while (t)
{
v[++v[0]]=t%10;
t/=10;
}
}
for (b=1;b<=n*n/4;++b)
{
t=0;
for (i=1;i<=v[0];i++)
{
v[i]=v[i]*16+t;
t=v[i]/10;
v[i]=v[i]%10;
}
while (t)
{
v[++v[0]]=t%10;
t/=10;
}
}
if (n%2==1)
{
t=0;
for (i=1;i<=v[0];i++)
{
v[i]=v[i]*2+t;
t=v[i]/10;
v[i]=v[i]%10;
}
while (t)
{
v[++v[0]]=t%10;
t/=10;
}
}
for (i=v[0];i>0;--i) printf("%d",v[i]);
return 0;
}