Pagini recente » Borderou de evaluare (job #1540800) | Borderou de evaluare (job #1274153) | Borderou de evaluare (job #2069523) | Borderou de evaluare (job #1625956) | Cod sursa (job #2124387)
#include <iostream>
#include <fstream>
std::ifstream f("inversmodular.in");
std::ofstream g("inversmodular.out");
int n;
int my_pow(int a,int b)
{
long long r=1;
while(b)
{
if(b%2) {r=(a%n)*(r%n); r%=n;}
a*=a;
a%=n;
b/=2;
}
return r;
}
using namespace std;
int main()
{
int a;
f>>a>>n;
g<<my_pow(a,n-2);
return 0;
}