Cod sursa(job #1108300)

Utilizator gerd13David Gergely gerd13 Data 15 februarie 2014 16:05:34
Problema Patrate2 Scor 10
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.85 kb
#include <fstream>

//#define MOD 1000000

using namespace std;

const int NMAX = 10005 ;


ifstream cin("patrate2.in");
ofstream cout("patrate2.out") ;

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


int main()
{


    Sol[0] = Sol[1] = 1;

    cin >> N;
    for(int i = 1; i <= (N * N) / 4 ; ++ i)
    {
        multire(Sol, 16);
        for(int i = 1 ; i <= N ; ++ i)
        {
            multire(Sol, i);
        }
    }

if(N % 2 == 1)
{
    multire(Sol, 2) ;
}

for(int i = Sol[0] ; i > 0 ; -- i)
    cout << Sol[i] ;
cout << '\n' ;

    cin.close() ;
    cout.close() ;
}