Pagini recente » Cod sursa (job #2019885) | Cod sursa (job #51746) | Cod sursa (job #101836) | Cod sursa (job #1552305) | Cod sursa (job #275841)
Cod sursa(job #275841)
#include<stdio.h>
int poq,r,j,n,x,t,aux,i,p2[100001];
int main()
{
freopen("patrate2.in","r",stdin);
freopen("patrate2.out","w",stdout);
scanf("%d",&n);
//2^(n*n)
x=0;
p2[0]=1;
p2[1]=1;
poq=(n*n)/2;
r=(n*n)%2;
while(x<poq)
{
x++;
t=0;
for (i=1;i<=p2[0];i++)
{
p2[i]=p2[i]*4+t;
t=p2[i]/10;
p2[i]=p2[i]%10;
}
while (t)
{
p2[++p2[0]]=t%10;
t/=10;
}
}
if(r==1)
{
x++;
t=0;
for (i=1;i<=p2[0];i++)
{
p2[i]=p2[i]*2+t;
t=p2[i]/10;
p2[i]=p2[i]%10;
}
while (t)
{
p2[++p2[0]]=t%10;
t/=10;
}
}
while (!p2[p2[0]]) p2[0]--;
//(2^(n*n)*n!
for(j=2;j<=n;j++)
{
aux=j;
t=0;
for (i=1;i<=p2[0];i++)
{
p2[i]=p2[i]*aux+t;
t=p2[i]/10;
p2[i]=p2[i]%10;
}
while (t)
{
p2[++p2[0]]=t%10;
t/=10;
}
}
//afisare
for(i=p2[0];i>=1;i--)
printf("%d",p2[i]);
return 0;
}