Pagini recente » Cod sursa (job #522437) | Cod sursa (job #1746086) | Cod sursa (job #2717453) | Cod sursa (job #700591) | Cod sursa (job #508394)
Cod sursa(job #508394)
#include <cstdio>
using namespace std;
#define dim 100000
long v[dim], j, cifre,n, rez, i;
void mare(long x, long a[dim])
{
j=v[0];
cifre=1;
while(j>0)
{
a[cifre]=a[cifre]*x;
++cifre;
--j;
}
a[0]=cifre-1;
for(j=1;j<=a[0];++j)
while(a[j]>9)
{
a[j+1]+=a[j]/10;
a[j]%=10;
}
if(a[cifre+1]!=0)
++a[0];
while(a[a[0]+1]!=0)
{
while(a[a[0]+1]>9)
{
a[a[0]+2]+=a[a[0]+1]/10;
a[a[0]+1]%=10;
}
++a[0];
}
}
int main()
{
freopen ("patrate2.in" , "r" , stdin);
freopen ("patrate2.out" , "w", stdout);
scanf("%d" , &n);
rez=n*n;
v[0]=1;
v[1]=1;
for(i=5;i<=rez;i+=5)
mare(32,v);
if(rez%5==1)
mare(2,v);
else
if(rez%5==2)
mare(4,v);
else
if(rez%5==3)
mare(8,v);
else
if(rez%5==4)
mare(16,v);
for(i=2;i<=n;++i)
mare(i,v);
for(i=v[0];i>=1;--i)
printf("%ld", v[i]);
return 0;
}