Pagini recente » Cod sursa (job #2131113) | Cod sursa (job #1964508) | Cod sursa (job #2963159) | Cod sursa (job #2903804) | Cod sursa (job #1093554)
#include <cstdio>
using namespace std;
bool prim (long long int x)
{
int i;
for (i=2; i*i<=x; i++)
if (x%i==0) return false; return true;
}
int main()
{
long long int a, n, i;
freopen("inversmodular.in","r",stdin);
freopen("inversmodular.out","w",stdout);
scanf("%lld%lld",&a,&n);
if (prim(n))
{
long long int x=1;
for (i=1; i<=n-2; i++)
{
x*=a; x%=n;
}
printf("%lld",x);
}
else printf("-1");
fclose(stdin);
fclose(stdout);
return 0;
}