Cod sursa(job #3295866)

Utilizator Lex._.Lexi Guiman Lex._. Data 9 mai 2025 10:31:31
Problema Invers modular Scor 60
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.49 kb
#include <bits/stdc++.h>
using namespace std;

//folosind a*a^(n-2)=1 (mod n)
int n;
int exponentiere_rapida(int a, int e) //calculam a^e
{
    int p=1;
    while(e>0)
    {
        if((e&1)==1)
            p=((long long)p*a)%n;
        a=((long long)a*a)%n;
        e>>=1;
    }
    return p;
}

int main()
{
    ifstream cin("inversmodular.in");
    ofstream cout("inversmodular.out");
    int a;
    cin >> a >> n;
    cout << exponentiere_rapida(a, n-2);

    return 0;
}