Pagini recente » Cod sursa (job #1391196) | Cod sursa (job #127954) | Cod sursa (job #1096892) | Cod sursa (job #143383) | Cod sursa (job #82002)
Cod sursa(job #82002)
#include<stdio.h>
#include<string.h>
#include<math.h>
int n[10000000], rez;
void citire()
{ char sir[102];
freopen("patrate2.in","r",stdin);
freopen("patrate2.out","w",stdout);
int a, i;
scanf("%s",&sir);
a = strlen(sir);
n[0]= a;
for (i = 0; i < a; i++)
n[a-i] = sir[i] - '0';
for (i=n[0]; i>=1; i--)
rez=rez*10+n[i];
}
void inmultire(int A[], int B)
{
int i, t = 0;
for (i = 1; i <= A[0] || t; i++, t /= 1000)
A[i] = (t += A[i] * B) % 1000;
A[0] = i - 1;
}
int main()
{
citire();
long long i;
n[0]=1; n[1]=2;
for (i=1; i<rez*rez; i++)
inmultire(n,2);
for (i=2; i<=rez; i++)
inmultire(n,i);
for (i=n[0]; i>=1; i--)
printf("%d",n[i]);
return 0;
}