Cod sursa(job #1266446)

Utilizator gedicaAlpaca Gedit gedica Data 18 noiembrie 2014 19:12:53
Problema Patrate2 Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.87 kb
#include <fstream>

using namespace std;

const int NMAX= 1000000;

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

int nr[NMAX+1];

inline void HH_Multiply( int a )
{
    int trans= 0;
    for ( int i= 1; i<= nr[0]; ++i )
    {
        trans+= nr[i]*a;
        nr[i]= trans%10;
        trans/=10;
    }

    while( trans )
    {
        ++nr[0];
        nr[ nr[0] ]= trans%10;
        trans/= 10;
    }
}

int main()
{
    int N;
    in >> N;

    nr[0]= 1;
    nr[1]= 1;

    //fact
    for( int i= 1; i<= N; ++i )
    {
        HH_Multiply( i );
    }
    //fact

    N*=N;

    //putere
    while( N )
    {
        HH_Multiply( 2 );
        --N;
    }
    //putere

    //afisare
    for ( int i= nr[0]; i >= 1; --i )
    {
        out << nr[i];
    }
    //afisare

    out << '\n';

    return 0;
}