Pagini recente » Cod sursa (job #205266) | Cod sursa (job #614482) | Cod sursa (job #685472) | Cod sursa (job #2895301) | Cod sursa (job #464148)
Cod sursa(job #464148)
#include <cstdio>
#define file_in "12perm.in"
#define file_out "12perm.out"
int n;
int p[101];
int viz[1010];
int nr;
void citire()
{
//freopen(file_in,"r",stdin);
//freopen(file_out,"w",stdout);
scanf("%d", &n);
}
inline int abs(int a) { return a>=0?a:-a; }
void back(int k)
{
int i;
if (k==n+1)
{
int ok=0;
for (i=1;i<n && !ok;++i)
if (abs(p[i]-p[i+1])>=3)
ok=1;
if (!ok)
{
nr++;
for (i=1;i<=n;++i)
printf("%d ", p[i]);
printf("\n");
}
}
for (i=1;i<=n;++i)
if (!viz[i])
{
viz[i]=1;
p[k]=i;
back(k+1);
viz[i]=0;
}
}
#define mod (1<<20)-1
void solve()
{
//back(1);
int a=2;
int b=6;
int c=12;
int i,aux,z;
for (i=5;i<=n;++i)
{
z=c;
aux=a+c+(2*(i-2));
aux&=mod;
a=aux;
c=b;
b=z;
}
printf("%d\n", a);
}
int main()
{
citire();
solve();
fclose(stdin);
fclose(stdout);
return 0;
}