Cod sursa(job #2356027)

Utilizator robertbirsanRobert Birsan robertbirsan Data 26 februarie 2019 14:15:31
Problema Invers modular Scor 10
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.48 kb
#include <bits/stdc++.h>
#define ll long long

using namespace std;

ifstream f("inversmodular.in");
ofstream g("inversmodular.out");

void gcd(ll &x, ll &y, int a, int b)
{
    if(b==0)
    {
        x=1;
        y=0;
    }
    else
    {
        gcd(x,y,b,a%b);
        ll aux=x;
        x=y;
        y=aux-y*a/b;
    }
}

int main()
{
    ll x=0,y;
    int a,n;
    f>>a>>n;

    gcd(x,y,a,n);

    if(x<=0)
        x=n+x%n;

    g<<x;
    return 0;
}