Pagini recente » Cod sursa (job #235528) | Cod sursa (job #2284007) | Cod sursa (job #1780643) | Cod sursa (job #179499) | Cod sursa (job #2484845)
#include <bits/stdc++.h>
#define MOD (1<<20)-1
typedef long long ll;
ll n, i, j, aux;
ll sol[4];
int main()
{
freopen("12perm.in", "r", stdin);
freopen("12perm.out", "w", stdout);
scanf("%lld", &n);
if(n==1) {printf("1"); return 0;}
if(n==2) {printf("2"); return 0;}
if(n==3) {printf("6"); return 0;}
sol[0]=1; sol[1]=2; sol[2]=6; sol[3]=12;
for(i=5; i<=n; ++i){
aux=sol[3];
sol[3]=(sol[1]+sol[3]+2*(i-2))&MOD;
sol[1]=sol[2]; sol[2]=aux;
}
printf("%lld", sol[3]);
fclose(stdin);
fclose(stdout);
return 0;
}