Cod sursa(job #697328)
Utilizator | Data | 29 februarie 2012 02:05:12 | |
---|---|---|---|
Problema | Patrate2 | Scor | 90 |
Compilator | cpp | Status | done |
Runda | Arhiva de probleme | Marime | 0.52 kb |
#include <cstdio>
FILE *f,*g;
typedef int Huge[10000];
Huge H;
int n,i;
void Mult(Huge H, int X)
{ int i;
int T=0;
for (i=1;i<=H[0];i++)
{ H[i]=H[i]*X+T;
T=H[i]/10;
H[i]=H[i]%10;
}
while (T)
{ H[++H[0]]=T%10;
T/=10;
}
}
int main() {
f=fopen("patrate2.in","r");
g=fopen("patrate2.out","w");
fscanf(f,"%d",&n);
H[0]=H[1]=1;
for (i=1;i<=n;i++)
Mult(H,i);
n*=n;
for (i=1;i<=n;i++)
Mult(H,2);
for (i=H[0];i>=1;i--) fprintf(g,"%d",H[i]);
fclose(g);
return 0;
}