Cod sursa(job #636773)

Utilizator ProtomanAndrei Purice Protoman Data 19 noiembrie 2011 23:34:31
Problema Dirichlet Scor 4
Compilator cpp Status done
Runda .com 2011 Marime 0.63 kb
#include <algorithm>
#include <iostream>
#include <fstream>

#define ll long long
#define restRez 9999991

using namespace std;

int n;

inline ll putere(ll nr, int exp)
{
	ll rest = 1;

	for (; exp > 1; exp /= 2)
	{
		if (exp & 1)
			rest = (rest * nr) % restRez;

		nr = (nr * nr) % restRez;
	}

	return nr * rest;
}

int main()
{
	ifstream cin("dirichlet.in");
	ofstream cout("dirichlet.out");

	cin >> n;

	ll sol = 1;
	for (int i = 2; i <= n; i++)
		sol = (sol * (i + n)) % restRez;

	for (int i = 1; i <= n; i++)
		sol = (sol * putere(i, restRez - 2)) % restRez;

	cout << sol;

	return 0;
}