Cod sursa(job #1110741)

Utilizator rares96cheseliRares Cheseli rares96cheseli Data 18 februarie 2014 12:53:24
Problema Invers modular Scor 60
Compilator cpp Status done
Runda Arhiva educationala Marime 0.39 kb
#include <fstream>
#define ll long long
using namespace std;
ifstream f("inversmodular.in");
ofstream g("inversmodular.out");

ll N, A;

ll logexp(ll baza, ll exponent)
{
    ll res=1;
    while (exponent)
    {
        if (exponent%2) res*=baza, res%=N;
        exponent/=2; baza*=baza; baza%=N;
    }
    return res;
}

int main()
{
    f>>A>>N;
    g<<logexp(A, N-2)<<'\n';
}