Pagini recente » Cod sursa (job #2343461) | Cod sursa (job #2325498) | Diferente pentru problema/numere7 intre reviziile 18 si 19 | Diferente pentru problema/sdp intre reviziile 21 si 3 | Cod sursa (job #1257822)
#include <cstdio>
using namespace std;
int n;
int lgput(int a,int b)
{ if(b==1)
return a%n;
if(b%2==0)
return lgput(a,b/2)%n;
return lgput(a,b/2)%n*a%n;
}
int main()
{ freopen("inversmodular.in","r",stdin);
freopen("inversmodular.out","w",stdout);
int a;
scanf("%d%d",&a,&n);
printf("%d",lgput(a,n-2));
return 0;
}