Pagini recente » Cod sursa (job #2828909) | Cod sursa (job #962932) | Cod sursa (job #153454) | Cod sursa (job #2938620) | Cod sursa (job #1044826)
#include <fstream>
using namespace std;
ifstream is("patrate2.in");
ofstream os("patrate2.out");
#define DIM 100000000
int n;
long long int a[DIM];
void Solve();
void Mult ( long long int a[], int x );
void Write();
int main()
{
is >> n;
Solve();
Write();
is.close();
os.close();
return 0;
}
void Solve()
{
a[0] = a[1] = 1;
for ( int i = 2; i <= n; i++ ) // n!
Mult( a, i );
int p = n * n;
for ( int i = 1; i <= p / 20; i++ ) // a reduce din calcule
Mult( a, 1024 * 1024 );
for ( int i = 1; i <= p % 20; i++ )
Mult( a, 2 );
}
void Write()
{
for ( int i = a[0]; i >= 1; i-- )
os << a[i];
}
void Mult( long long int a[], int x )
{
int t = 0, i;
for ( i = 1; i <= a[0] || t; i++ )
{
t += a[i] * x;
a[i] = t % 10;
t /= 10;
}
a[0] = i - 1;
}