Pagini recente » Cod sursa (job #1853340) | Cod sursa (job #1767482) | Cod sursa (job #1551924) | Cod sursa (job #2220158) | Cod sursa (job #2855238)
#include <iostream>
#include <fstream>
using namespace std;
ifstream fin("inversmodular.in");
ofstream fout("inversmodular.out");
long long putere(int a, int b, int n)
{
long long aa = 1, ans = 1;
while(b)
{
if(b & 1LL)// exp impar deci inmultim rezultatul cu baza
{
ans *= a;
ans %= n;
}
a = 1LL * a * a % n;
b >>= 1LL;
}
return ans;
}
int main()
{
int a, n;
fin >> a >> n;
fout <<putere(a, n-2, n);
return 0;
}