Cod sursa(job #2352570)
Utilizator | Data | 23 februarie 2019 13:49:24 | |
---|---|---|---|
Problema | Invers modular | Scor | 10 |
Compilator | cpp-64 | Status | done |
Runda | Arhiva educationala | Marime | 0.38 kb |
#include <bits/stdc++.h>
using namespace std;
long long N, K, rest;
int main(){
freopen("inversmodular.in", "r", stdin);
freopen("inversmodular.out", "w", stdout);
scanf("%lld%lld", &N, &K);
rest = N % K;
while((N * rest) % K != 1){
rest *= 2;
if(rest > K)
rest %= K;
}
printf("%lld", rest);
return 0;
}