Pagini recente » Cod sursa (job #1856626) | Cod sursa (job #2460861) | Cod sursa (job #704347) | Cod sursa (job #2510951) | Cod sursa (job #708031)
Cod sursa(job #708031)
//
// (2n)!/n!/n!/(n+1)
// =(2n)!/(n!*n!*(n+1))
// =(n+2)*(n+3)*...*(2n)/n!
//
#include <fstream>
#define MOD 9999991
using namespace std;
long long A,B,Sol,X=1,Y,tmp;
void inversMod(int a,int b) {
if(b) {
inversMod(b,a%b);
tmp=X;
X=Y;
Y=tmp-Y*(a/b);
}
}
int main() {
int i,n;
ifstream in("dirichlet.in");
ofstream out("dirichlet.out");
in>>n;
for(i=n+2,A=1;i<=2*n;i++)
A=(A*i)%MOD;
for(i=2,B=1;i<=n;i++)
B=(B*i)%MOD;
inversMod(B,MOD);
while(X<=0)
X+=MOD;
Sol=(A*X)%MOD;
out<<Sol<<'\n';
in.close();
out.close();
return 0;
}