Cod sursa(job #637674)

Utilizator klamathixMihai Calancea klamathix Data 20 noiembrie 2011 15:53:50
Problema Dirichlet Scor 76
Compilator cpp Status done
Runda .com 2011 Marime 0.57 kb
#include<cstdio>

using namespace std;

const int mod = 9999991;

int i , j , n , ans = 1;

int inv ( int a ) {
	
	int ans = 1 , i;
	int p = a;
	
	for ( i = 0; (1 << i) <= mod - 2; ++i ) {
		if ( (1 << i) & (mod - 2) )
			ans = ( 1LL * ans * p ) % mod;
		p = (1LL * p * p) % mod;
	}
	
return ans;
}

int main()
{
	freopen("dirichlet.in","r",stdin);
	freopen("dirichlet.out","w",stdout);
	
	scanf("%d",&n);
	
	for ( i = 2 ; i <= n ; ++i )
		ans = (1LL * ans * (n + i)) % mod,
		ans = (1LL * ans * inv(i)) % mod;
	
	printf("%d\n",ans);
		
return 0;
}