Pagini recente » Cod sursa (job #740013) | Cod sursa (job #934818) | Cod sursa (job #2511491) | Cod sursa (job #532333) | Cod sursa (job #2337205)
#include <bits/stdc++.h>
#define MOD 9999991
using namespace std;
ifstream fin ("dirichlet.in");
ofstream fout ("dirichlet.out");
long long n, i, f1, f2, f3, p, x, y, k;
inline long long euclidpp (long long a, long long b, long long &x, long long &y){
long long xa, ya, d;
if (b == 0){
y = 0, x = 1;
return a;
}
else{
d = euclidpp (b, a%b, xa, ya), x = ya, y = xa - a/b*ya;
return d;
}
}
int main(){
fin >> n;
f1 = 1;
for (i=1; i<=n; i++){
f1 = f1 * i;
f1 %= MOD;
}
f2 = 1;
for (i=1; i<=n+1; i++){
f2 = f2 * i;
f2 %= MOD;
}
f3 = 1;
for (i=1; i<=2*n; i++){
f3 = f3 * i;
f3 %= MOD;
}
p = (f1*f2)%MOD;
euclidpp (p, MOD, x, y);
x %= MOD;
if (x < 0){
x += MOD;
}
fout << (f3*x)%MOD;
return 0;
}