Cod sursa(job #543464)
| Utilizator | Data | 28 februarie 2011 08:14:00 | |
|---|---|---|---|
| Problema | Sortari2 | Scor | 30 |
| Compilator | cpp | Status | done |
| Runda | Arhiva de probleme | Marime | 0.55 kb |
#include<cstdio>
int sol,n;
const int MOD=999017;
int calcperm(int n)
{
int rez=1;
for(int i=2;i<=n;i++)
{
rez*=i;
rez%=MOD;
}
return rez;
}
int fib(int n)
{
int x=1,y=1,z;
for(int i=3;i<=n;i++)
{
z=x+y;
x=y;
y=z;
}
return z;
}
int main()
{
freopen("sortari2.in","r",stdin);
freopen("sortari2.out","w",stdout);
scanf("%d",&n);
sol=calcperm(n);
sol-=fib(2*n-1);
if(sol<0)
sol+=MOD;
printf("%d",sol);
return 0;
}
