Cod sursa(job #976971)

Utilizator sddddgjdZloteanu Anastasia sddddgjd Data 24 iulie 2013 14:50:04
Problema Patrate2 Scor 100
Compilator c Status done
Runda Arhiva de probleme Marime 0.58 kb
#include<stdio.h>
int v[1000000];
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()
{
    FILE *fin,*fout;
    fin=fopen("patrate2.in","r");
    fout=fopen("patrate2.out","w");
    int n;
    fscanf(fin,"%d",&n);
    v[0]=v[1]=1;
    if ((n*n)%3==1)
        mul(v,2);
    int i;
    for (i=1;i<=n*n/3;i++)
        mul(v,8);
    for (i=1;i<=n;i++)
        mul(v,i);
    for (i=v[0];i>=1;i--)
        fprintf(fout,"%d",v[i]);
    return 0;
}