Pagini recente » Cod sursa (job #1549030) | Cod sursa (job #461951) | Cod sursa (job #513712) | Cod sursa (job #2679725) | Cod sursa (job #334753)
Cod sursa(job #334753)
#include <algorithm>
#include <stdio.h>
using namespace std;
int n;
int rec[5];
int main()
{
freopen("12perm.in", "r", stdin);
freopen("12perm.out", "w", stdout);
scanf("%d", &n);
rec[0] = 1; rec[1] = 2; rec[2] = 6; rec[3] = 12;
for (int i = 5; i <= n; i++)
{
rec[4] = (rec[3] + rec[1] + ((i - 2) << 1)) & ((1 << 20) - 1);
for (int j = 1; j < 4; j++)
rec[j] = rec[j + 1];
}
if (n > 4)
printf("%d\n", rec[4]);
else printf("%d\n", rec[n - 1]);
fclose(stdin);
fclose(stdout);
return 0;
}