Pagini recente » Cod sursa (job #1193868) | Cod sursa (job #692641) | Cod sursa (job #707210) | Cod sursa (job #2938199) | Cod sursa (job #66249)
Cod sursa(job #66249)
#include <stdio.h>
#include <string.h>
#define MOD (1<<20)-1//1048576
int main()
{
int n, i;
int t[] = {0, 1, 2, 6, 12, 0};
int size = 5*sizeof(int);
freopen("12perm.in", "r", stdin);
freopen("12perm.out", "w", stdout);
scanf("%d\n", &n);
for(i = 5; i <= n; ++i)
{
t[5] = (t[4] + t[3] + 2*(i-1)) & MOD;
memmove(t, t+1, size);
//if(t[4] >= MOD)
//t[4] %= MOD;
//if(t[3] >= MOD)
//t[3] %= MOD;
}
if(n > 4)
printf("%d\n", t[5]%MOD);
else
printf("%d\n", t[n]);
fclose(stdin);
fclose(stdout);
return 0;
}