Cod sursa(job #3276455)

Utilizator TeodoRazvanStancu Teodor-Razvan TeodoRazvan Data 13 februarie 2025 18:11:46
Problema Invers modular Scor 90
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.56 kb
#include <bits/stdc++.h>
#include <fstream>

using namespace std;

ifstream fin("inversmodular.in");
ofstream fout("inversmodular.out");

void euclidex(int a,int b,int &d,int &x,int &y){
    if(b==0){
        d=a;
        x=1;
        y=0;
    }else{
        int x1,y1;
        euclidex(b,a%b,d,x1,y1);
        x=y1;
        y=x1-(a/b)*y1;
    }
}
int modinv(int a,int b){
    int d,x,y;
    euclidex(a,b,d,x,y);
    if(d!=1) return -1;
    return (x%b+b)%b;
}

int main(){
    int a,b;
    fin>>a>>b;
    fout<<modinv(a,b);
    return 0;
}