Cod sursa(job #1895797)
Utilizator | Data | 28 februarie 2017 11:02:46 | |
---|---|---|---|
Problema | Invers modular | Scor | 0 |
Compilator | cpp | Status | done |
Runda | Arhiva educationala | Marime | 0.31 kb |
#include <fstream>
using namespace std;
ifstream f("inversmodular.in");
ofstream g("inversmodular.out");
unsigned long long a,b,nr;
unsigned long i;
int main()
{
f>>a>>b;
b-=2;
for(nr=1,i=(1<<31);i;i>>=1)
{
nr*=nr;
if(i&b) nr*=a;
}
g<<nr%(b+2);
return 0;
}