Cod sursa(job #2665529)

Utilizator 2016Teo@Balan 2016 Data 30 octombrie 2020 23:48:27
Problema Dirichlet Scor 100
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.61 kb
#include <bits/stdc++.h>
using namespace std;
#define x1 "dirichlet.in"
#define x2 "dirichlet.out"
ifstream in(x1);
ofstream out(x2);
#define MOD 9999991
long long fastexp(long long n, long long p) {
    long long a = 1;
    while(p) {
        if(p % 2)
            a = (1LL * a * n) % MOD;
        n = (1LL * n * n) % MOD;
        p /= 2;
    }
    return a;
}
int main() {
    long long n, i, ans1 = 1, ans2 = 1;
    in >> n;
    for(i = 2; i <= n; i++) {
        ans1 = (ans1 * i) % MOD;
        ans2 = (ans2 * (n + i)) % MOD;
    }
    out << (ans2 * fastexp(ans1, MOD - 2)) % MOD;
    return 0;
}