Cod sursa(job #636690)

Utilizator Catah15Catalin Haidau Catah15 Data 19 noiembrie 2011 22:33:26
Problema Dirichlet Scor 44
Compilator cpp Status done
Runda .com 2011 Marime 0.51 kb
#include <iostream>
#include <cstdio>

using namespace std;

#define maxN 1000005
#define MOD 9999991

long long C[maxN];

int main()
{
	freopen ("dirichlet.in", "r", stdin);
	freopen ("dirichlet.out", "w", stdout);
	
	int N;
	
	scanf ("%d", &N);
	
	C[1] = 1;
	
	for (int i = 2; i <= N; ++ i)
	{
		C[i] = (2 * C[i - 1]) % MOD;
		
		for (int j = 1; j <= i - 2; ++ j)
		{
			C[i] += (C[j] * C[i - j - 1]);
			if (C[i] > MOD) C[i] %= MOD;
		}
	}
	
	printf ("%lld", C[N] % MOD);
	
	return 0;
}