Cod sursa(job #3289124)

Utilizator CiuntuTiberiuCiuntu Tiberiu CiuntuTiberiu Data 25 martie 2025 19:09:47
Problema Dirichlet Scor 100
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.71 kb
#include <iostream>
#include <fstream>

using namespace std;

ifstream fin("dirichlet.in");
ofstream fout("dirichlet.out");

const int MOD = 9999991;

long long pow(long long b, int e)
{
    long long p=1, a=b;
    for(; e; e>>=1)
    {
        if(e&1) p = (p * a) % MOD;
        a = (a * a) % MOD;
    }
    return p;
}

long long invers(long long a){
    return pow(a, MOD - 2);
}

int main() {
    int n;
    long long fact2n = 1, fact;

    fin >> n;

    for(int i = 1; i <= 2 * n; i++){
        fact2n  = (fact2n * i) % MOD;
        if(i == n)
            fact = fact2n;
    }

    fout << (fact2n * invers(fact) % MOD * (invers(fact * (n + 1) % MOD)) % MOD) % MOD;

    return 0;
}