Pagini recente » Cod sursa (job #2856801) | Cod sursa (job #3250230) | Cod sursa (job #506285) | Cod sursa (job #2559378) | Cod sursa (job #3182635)
#include <fstream>
using namespace std;
ifstream cin("patrate2.in");
ofstream cout("patrate2.out");
#define DIM 10005
int Factorial[DIM], Putere[DIM], Rez[DIM], N;
int main()
{
cin>>N;
Factorial[++Factorial[0]] = 1;
for(int i = 2; i <= N; ++i) {
int j = 1;
int cat = 0;
while(j <= Factorial[0] || cat) {
Factorial[j] = Factorial[j] * i + cat;
cat = Factorial[j] / 10;
Factorial[j] %= 10;
Factorial[0] = max(Factorial[0], j);
++j;
}
}
Putere[++Putere[0]] = 1;
for(int i = 1; i <= N * N; ++i) {
int j = 1;
int cat = 0;
while(j <= Putere[0] || cat) {
Putere[j] = Putere[j] * 2 + cat;
cat = Putere[j] / 10;
Putere[j] %= 10;
Putere[0] = max(Putere[0], j);
++j;
}
}
for(int j = 1; j <= Factorial[0]; ++j) {
for(int i = 1; i <= Putere[0]; ++i) {
Rez[i + j - 1] += Putere[i] * Factorial[j];
}
}
int cat = 0;
for(int i = 1; cat || i <= Factorial[0] + Putere[0] - 1; ++i) {
Rez[i] += cat;
cat = Rez[i] / 10;
Rez[i] %= 10;
Rez[0] = max(Rez[0], i);
}
for(int i = Rez[0]; i > 0; --i) {
cout << Rez[i];
}
cout << '\n';
return 0;
}