Pagini recente » Cod sursa (job #3354373) | Cod sursa (job #3187893) | Diferente pentru problema/atac intre reviziile 1 si 9 | Cod sursa (job #2537466) | Cod sursa (job #1327597)
#include<fstream>
using namespace std;
ifstream f("inversmodular.in");
ofstream g("inversmodular.out");
int a,n;
long long int e,r;
void invmod(int a, int n,long long int &e,long long int &r)
{
if(n==0)
{
e=1;
r=0;
}
else
{
invmod(n,a%n,e,r);
int t=e;
e=r;
r=t-(a/n)*r;
}
}
int main()
{
f>>a>>n;
invmod(a,n,e,r);
e=e%n;
if(e<0)
e+=n;
g<<e;
}