Cod sursa(job #2328715)

Utilizator AndreiGSGhiurtu Andrei AndreiGS Data 26 ianuarie 2019 10:15:25
Problema Patrate2 Scor 30
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.6 kb
#include <fstream>

using namespace std;

ifstream f("patrate2.in");
ofstream g("patrate2.out");

const int MOD = 1999999973;

int RidicareLogaritmica(int N, int P)
{
    int r = 1;
    while(P)
    {
        if(P % 2 == 1)
            r = (1LL * r * N) % MOD;
        N = (1LL * N * N) % MOD;
        P = P / 2;
    }
    return r;
}

int fact(int n)
{
    int factorial=1;
    for(int i=1; i<=n; i++)
        factorial=factorial*i;
    return factorial;
}

int main()
{
    int n;
    f>>n;
    g<<fact(n)*RidicareLogaritmica(2, RidicareLogaritmica(n, 2));
    return 0;
}