Cod sursa(job #2528864)
Utilizator | Data | 22 ianuarie 2020 18:28:44 | |
---|---|---|---|
Problema | Invers modular | Scor | 60 |
Compilator | cpp-64 | Status | done |
Runda | Arhiva educationala | Marime | 0.42 kb |
#include <fstream>
using namespace std;
ifstream f("inversmodular.in");
ofstream g("inversmodular.out");
int a,n;
int inv_mod(int x, int mod)
{
int p = mod - 2;
int rez = 1;
while (p)
{
if (p%2)
rez = (1LL * rez * x) % mod;
x = (1LL * x * x) % mod;
p = p / 2;
}
return rez;
}
int main()
{
f>>a>>n;
g<<inv_mod(a, n);
return 0;
}