Cod sursa(job #2987657)

Utilizator AlexandruBenescuAlexandru Benescu AlexandruBenescu Data 2 martie 2023 17:46:17
Problema Invers modular Scor 60
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.43 kb
#include <bits/stdc++.h>
using namespace std;
ifstream fin("inversmodular.in");
ofstream fout("inversmodular.out");

long long MOD;

long long qexp(long long a, long long b){
  long long r = 1;
  while (b){
    if (b % 2 == 1)
      r = (r * a) % MOD;
    a = (a * a) % MOD;
    b /= 2;
  }
  return r;
}

int main(){
  long long a, n;
  fin >> a >> n;
  MOD = n;
  fout << qexp(a, n - 2) << "\n";
  return 0;
}