Pagini recente » Cod sursa (job #1880604) | Cod sursa (job #2311040) | Cod sursa (job #1624466) | Cod sursa (job #2534176) | Cod sursa (job #1105274)
#include <fstream>
#include <cstring>
using namespace std;
ifstream is("patrate2.in");
ofstream os("patrate2.out");
int n;
int a[3200];
int ceva;
void INMULTIRE(int x[3200], int y);
int main()
{
is >> n;
a[0] = 1;
a[1] = 1;
for ( int i = 2; i <= n; ++i )
INMULTIRE(a, i);
ceva = n * n;
while ( ceva >= 10 )
{
ceva -= 10;
INMULTIRE(a, 1024);
}
for ( int i = 1; i <= ceva; ++i )
INMULTIRE(a, 2);
for ( int i = a[0]; i; --i )
os << a[i];
is.close();
os.close();
return 0;
}
void INMULTIRE(int x[3200], int y)
{
int rest = 0;
int i;
for ( i = 1; i <= x[0] || rest; ++i )
{
x[i] = x[i] * y + rest;
rest = x[i] / 10;
x[i] %= 10;
}
while ( x[x[0] + 1] )
++x[0];
}