Cod sursa(job #514587)
Utilizator | Hreapca Aurelian auRSTAR | Data | 19 decembrie 2010 11:26:45 |
---|---|---|---|
Problema | 12-Perm | Scor | 100 |
Compilator | cpp | Status | done |
Runda | Arhiva de probleme | Marime | 0.49 kb |
#include<cstdio>
#define mod 1048576
void read(),solve();
int i,n,sol[6],ok;
int main()
{
read();
solve();
return 0;
}
void read()
{
freopen("12perm.in","r",stdin);
freopen("12perm.out","w",stdout);
scanf("%d",&n);
}
void solve()
{
sol[1]=1;sol[2]=2;sol[3]=6;sol[4]=12;
if(n<=4){printf("%d ",sol[n]);return;}
for(i=5;i<=n;i++)
{
sol[5]=(sol[4]+sol[2]+((i-2)<<1))&(mod-1);
if(i==n){printf("%d ",sol[5]);return;}
sol[2]=sol[3];sol[3]=sol[4];sol[4]=sol[5];
}
}