Cod sursa(job #268237)
Utilizator | Data | 28 februarie 2009 22:50:24 | |
---|---|---|---|
Problema | 12-Perm | Scor | 0 |
Compilator | cpp | Status | done |
Runda | Arhiva de probleme | Marime | 0.51 kb |
#include<iostream.h>
#include<stdio.h>
FILE *f=fopen("12perm.in","r"),*g=fopen("12perm.out","w");
int main()
{//a mod 2^k <-> a & ((2^k)-1)
long x[]={0,1,2,6,12},i,n;
fscanf(f,"%ld",&n);
if(n<=4)
{
fprintf(g,"%d\n",x[n]);
}
else
{
for(i=5;i<=n;i++)
{
x[0]=x[4]+x[2]+2*(i-2);
x[0]=x[0]&((2^20)-1);
x[2]=x[3];x[3]=x[4];x[4]=x[0];
}
fprintf(g,"%ld",x[4]);
}
return 0;
}