Pagini recente » Cod sursa (job #2732909) | Cod sursa (job #901571) | Cod sursa (job #2727536) | Cod sursa (job #2158601) | Cod sursa (job #2785788)
#include <fstream>
#include <vector>
using namespace std;
ifstream cin ( "patrate2.in" );
ofstream cout ( "patrate2.out" );
/// 2 ^ ( N ^ 2 ) * N!
const int base = 1e6;
const int POW = 27;
vector<int> ANS;
void mult( int nr ) {
int t = 0, n;
n = ANS.size();
for ( int i = 0; i < n || t > 0; i++ ) {
if ( i < n )
t = t + nr * ANS[i];
if ( i < n )
ANS[i] = t % base;
else
ANS.push_back( t % base );
t /= base;
}
}
int main() {
int n, i;
cin >> n;
ANS.push_back(1);
for ( i = 1; i <= ( n * n ) / POW; i++ )
mult((1 << POW));
for ( i = 1; i <= ( n * n ) % POW; i++ )
mult(2);
for ( i = 2; i <= n; i++ )
mult(i);
for ( i = 0; i < ANS.size(); i++ )
cout << ANS[i];
return 0;
}