Pagini recente » Monitorul de evaluare | Cod sursa (job #1223415) | Cod sursa (job #1393783) | Cod sursa (job #2483533) | Cod sursa (job #1043274)
#include <fstream>
using namespace std;
#define mod 9999991
long long int rid(long long int a,long long int b)
{
if(b==0)
return 1;
else if(b==1)
return (a%mod);
else if(b%2==0)
{
long long int aux=rid(a,b/2);
return ((aux*aux)%mod);
}
else
{
long long int aux=rid(a,b-1);
return ((aux*a)%mod);
}
}
int main()
{
ifstream cin("dirichlet.in");
ofstream cout("dirichlet.out");
long long int n,i,nr1=1,nr2=1;
cin>>n;
for(i=n+2;i<=(2*n);i++)
nr1*=i,nr1%=mod;
for(i=1;i<=n;i++)
nr2*=i,nr2%=mod;
long long int inv=rid(nr2,mod-2);
cout<<(inv*nr1)%mod<<'\n';
cin.close();
cout.close();
return 0;
}