Pagini recente » Cod sursa (job #2602687) | Cod sursa (job #1388023) | Cod sursa (job #3160375) | Cod sursa (job #3142557) | Cod sursa (job #2678015)
#include <fstream>
using namespace std;
#define M 9999991
#define ull unsigned long long
ifstream fin("dirichlet.in");
ofstream fout("dirichlet.out");
ull n,x;
ull rise (ull a,ull b)
{
if(b==0) return 1;
ull x=rise(a,b/2);
if(b%2==0) return (x*x)%M;
return (((x*x)%M)*a)%M;
}
ull catalan(ull n)
{
ull i,t=1,s=1;
for(i=1;i<=n;++i)t=(t*i)%M;
for(i=n+2;i<=2*n;i++)s=(s*i)%M;
t=rise(t,M-2);
return (s*t)%M;
}
int main()
{
fin>>n;
x=catalan(n);
fout<<x;
return 0;
}