Pagini recente » Cod sursa (job #1313409) | Cod sursa (job #578540) | Diferente pentru problema/shuffle intre reviziile 3 si 2 | Cod sursa (job #768329) | Cod sursa (job #2166489)
#include <stdio.h>
#define ll long long
int A, N;
inline ll gcd(int a, int b) {
return !b ? a : gcd(b, a % b);
}
int main() {
ll inv = 0, ins;
freopen("inversmodular.in", "r", stdin);
freopen("inversmodular.out", "w", stdout);
scanf("%d %d", &A, &N);
inv = gcd(A, N);
if (inv <= 0)
inv = N + inv % N;
printf("%lld\n", inv);
return 0;
}