blob: d016a63fbd2a514c5fa344116910d37a047e2b08 (
plain)
1
2
3
4
5
6
7
|
// a*x + b*y = ggt(a, b)
ll extendedEuclid(ll a, ll b, ll& x, ll& y) {
if (a == 0) {x = 0; y = 1; return b;}
ll x1, y1, d = extendedEuclid(b % a, a, x1, y1);
x = y1 - (b / a) * x1; y = x1;
return d;
}
|