Cod sursa(job #636324)
Utilizator | Antoanela Siminiuc antoanela | Data | 19 noiembrie 2011 18:50:50 |
---|---|---|---|
Problema | Dirichlet | Scor | 100 |
Compilator | cpp | Status | done |
Runda | .com 2011 | Marime | 0.47 kb |
#include <cstdio>
#define mod 9999991
#define ll long long
int n;
ll sol;
ll pow(ll n, int p)
{
ll r=1;
int i;
for (i=1; i<=p; i<<=1)
{
if (i&p) r=(r*n)%mod;
n=n*n%mod;
}
return r;
}
int main()
{
freopen("dirichlet.in","r",stdin);
freopen("dirichlet.out","w",stdout);
scanf("%d", &n);
int i;
sol=1;
for (i=n+2; i<=2*n; i++) sol=sol*i%mod;
ll c=1;
for (i=2; i<=n; i++) c=c*i%mod;
sol=sol*pow(c,mod-2)%mod;
printf("%lld\n",sol);
}