Pagini recente » Cod sursa (job #2367228) | Cod sursa (job #3196649) | Cod sursa (job #469139) | Cod sursa (job #60978) | Cod sursa (job #2453822)
#include <bits/stdc++.h>
using namespace std;
ifstream f("patrate2.in");
ofstream g("patrate2.out");
const int NMAX = 10000005;
unsigned long long n,ans[NMAX],sz = 1;
int main(){
unsigned long long i,nconst,integer,j,newsz,part,units;
f >> n;
ans[1] = 1;
nconst = n - 1;
if(n == 1){
g << 2;
return 0;
}
for(i = 1 ; i <= n ; i++){
newsz = sz;
for(j = 1 ; j <= sz ; j++){
ans[j] *= (n - i + 1);
if(ans[j] > 9){
integer = ans[j] / 10;
ans[j] %= 10;
ans[j + 1] += integer;
if(integer)
newsz = max(newsz, j + 1);
}
}
sz = newsz;
}
for(i = 1 ; i <= n ; i++){
newsz = sz;
for(j = 1 ; j <= sz ; j++){
ans[j] *= 4;
while(ans[j] > 9){
integer = ans[j] / 10;
ans[j] %= 10;
ans[j + 1] += integer;
if(integer)
newsz = max(newsz, j + 1);
}
}
sz = newsz;
}
for(i = 1 ; i <= n ; i++){
newsz = sz;
for(j = 1 ; j <= sz ; j++){
ans[j] *= nconst;
while(ans[j] > 9){
integer = ans[j] / 10;
ans[j] %= 10;
ans[j + 1] += integer;
if(integer)
newsz = max(newsz, j + 1);
}
}
sz = newsz;
}
for(i = sz; i ; i--)
g << ans[i] ;
return 0;
}