Cod sursa(job #2371654)
Utilizator | Data | 6 martie 2019 18:52:12 | |
---|---|---|---|
Problema | Dirichlet | Scor | 100 |
Compilator | cpp-64 | Status | done |
Runda | Arhiva de probleme | Marime | 0.54 kb |
#include <bits/stdc++.h>
#define N 1000005
#define MOD 9999991
using namespace std;
ifstream fin("dirichlet.in") ;
ofstream fout("dirichlet.out") ;
long long inv(long long a,long long b)
{
return 1 < a ? b-inv(b%a,a)*b/a : 1 ;
}
int main()
{
int n , i ;
long long f2 =1 , f1=1 ,f3=1 ;
fin >> n ;
for ( i = 2 ; i <= 2*n ; i++ )
f1 = (f1*i)%MOD ;
for ( i = 2 ; i <= n ; i++ )
f2 = (f2*i)%MOD ;
f3 = (f2*(n+1))%MOD ;
f2 = (f2*f3)%MOD ;
fout << (1LL*f1*inv(f2,MOD))%MOD ;
}