Cod sursa(job #323991)

Utilizator doru.nituNitu Doru Constantin doru.nitu Data 14 iunie 2009 12:25:26
Problema Patrate2 Scor 10
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.69 kb
#include<stdio.h>
 
int a[10000],i,j,n;

void mul(int A[], int B)  
{  
       int i, t = 0;  
       for (i = 1; i <= A[0] || t; i++, t /= 10)  
               A[i] = (t += A[i] * B) % 10;  
       A[0] = i - 1;  
}  

int main()
{ freopen("patrate2.in","r",stdin);
  freopen("patrate2.out","w",stdout);
  
  scanf("%d",&n);
  if(n==1) { printf("2\n");
             fclose(stdin);
             fclose(stdout);
             return 0;
           } 
  a[0]=1;
  a[1]=1;
  
  for(i=1;i<=n;i++) mul(a,i);
  mul(a,4*n*n*(n-1));
  
  for(i=a[0];i>=1;--i) printf("%d",a[i]);
  printf("\n");
  
  fclose(stdin);
  fclose(stdout);
  return 0;
}