Pagini recente » Borderou de evaluare (job #3135128) | Borderou de evaluare (job #2194247) | Borderou de evaluare (job #3115640) | Borderou de evaluare (job #1441147) | Cod sursa (job #1237998)
#include <iostream>
#include <fstream>
using namespace std;
ifstream f("patrate2.in");
ofstream g("patrate2.out");
int n;
int sol[1000001];
inline void inmulteste(int x) {
int t = 0;
for (int i = 1; i <= sol[0]; i++) {
t += sol[i] * x;
sol[i] = t % 10;
t /= 10;
}
while (t) {
sol[0]++;
sol[sol[0]] = t % 10;
t /= 10;
}
}
inline void rezolva() {
sol[0] = sol[1] = 1;
for (int i = 1; i <= n; i++) inmulteste(i);
n *= n;
for (int i = 1; i <= n; i++) inmulteste(2);
}
inline void scrie() {
for (int i = sol[0]; i >= 1; i--) g << sol[i];
}
int main() {
f >> n;
rezolva();
scrie();
return 0;
}