Pagini recente » Cod sursa (job #1143297) | Cod sursa (job #1152863) | Cod sursa (job #3288796) | Cod sursa (job #3262201) | Cod sursa (job #2767841)
#include <fstream>
using namespace std;
#define MOD 9999991
int N;
inline int euclid (int a,int b,int &x,int &y)
{
int d,x0,y0;
if (!b)
{
x=1; y=0;
return a;
}
d=euclid (b,a%b,x0,y0);
x=y0; y=x0-(a/b)*y0;
return d;
}
int invers_modular (int A,int N)
{
int inv,nr;
euclid (A,N,inv,nr);
if (inv<0)
inv=N+inv%N;
return inv;
}
int main ()
{
ifstream fin ("dirichlet.in");
ofstream fout ("dirichlet.out");
int rez,inv;
fin>>N;
rez=inv=1;
for (int i=2; i<=N; ++i)
{
rez=(1LL*rez*(N+i))%MOD;
inv=(1LL*inv*i)%MOD;
}
inv=invers_modular (inv,MOD);
rez=(1LL*rez*inv)%MOD;
fout<<rez;
return 0;
}