Pagini recente » Cod sursa (job #149023) | Cod sursa (job #1138618) | Cod sursa (job #907039) | Cod sursa (job #2038692) | Cod sursa (job #2147038)
#include <fstream>
using namespace std;
ifstream f("inversmodular.in");
ofstream g("inversmodular.out");
int n, mod;
void euclid(int a, int b, int &x, int &y) {
if (b == 0) {
x = 1, y = 0;
return;
}
int xx, yy;
euclid(b, a%b, xx, yy);
x = yy;
y = xx-(a/b)*yy;
}
int inv_mod(int n) {
int x, y;
euclid(n,mod,x,y);
if (x < 0) x += mod;
return x;
}
int main() {
f >> n >> mod;
g << inv_mod(n);
return 0;
}