Pagini recente » Cod sursa (job #679241) | Cod sursa (job #3263636) | Cod sursa (job #2454122) | Cod sursa (job #2515668) | Cod sursa (job #2512572)
#include <fstream>
#define MOD 9999991
using namespace std;
ifstream fin("dirichlet.in");
ofstream fout("dirichlet.out");
long long pw(long long x,long long p){
if(p==0)
return 1;
long long aux=pw(x,p/2);
if(p%2==1)
return (x*aux*aux)%MOD;
else
return (aux*aux)%MOD;
}
long long DIV(long long a,long long b){
return (a*pw(b,MOD-2))%MOD;
}
long long catalan(long long x){
long long p=1;
for(long long i=1;i<=x*2;i++){
p=(p*i)%MOD;
}
for(long long i=0;i<2;i++){
for(long long j=1;j<=x;j++){
p=DIV(p,j);
}
}
p=DIV(p,x+1);
return p%MOD;
}
int main()
{
long long n;
fin>>n;
fout<<catalan(n);
return 0;
}