Pagini recente » Cod sursa (job #443244) | Cod sursa (job #1811177) | Cod sursa (job #2264107) | Cod sursa (job #1664194) | Cod sursa (job #1200124)
//n!*(2^(n*n))
#include <stdio.h>
int v[8000000], aux[8000000];
inline void inmultire(int a){
int incep, c, e, j, i, x;
for(i=1; i<=v[0]; i++){
aux[i]=0;
}
incep=0;
x=0;
while(a>0){
c=a%10;
a/=10;
incep++;
e=0;
j=incep;
i=1;
while((e>0)||(i<=v[0])){
if(x<j){
x=j;
}
e+=v[i]*c;
e+=aux[j];
aux[j]=e%10;
e/=10;
j++;
i++;
}
}
v[0]=x;
for(i=1; i<=v[0]; i++){
v[i]=aux[i];
}
}
int main(){
int n, i;
FILE *fin, *fout;
fin=fopen("patrate2.in", "r");
fout=fopen("patrate2.out", "w");
fscanf(fin, "%d", &n);
v[0]=1;
v[1]=1;
for(i=2; i<=n; i++){
inmultire(i);
}
for(i=1; i<=n*n; i++){
inmultire(2);
}
printf("%d", v[0]);
for(i=v[0]; i>0; i--){
fprintf(fout, "%d", v[i]);
}
fprintf(fout, "\n");
fclose(fin);
fclose(fout);
return 0;
}