Congruent Ecuación (Yuan inversión, la ecuación congruencia lineal solución mínima

# El significado de los problemas

Dada a, b, se obtiene x de la ecuación ax mínimo ≡ 1 (mod b) de

De entrada para asegurar una cierta solvencia

2 ≤ a, b ≤ 2 * 10 9

# Explicaciones

ax ≡ 1 (mod b)

ax + by = 1

REPRESENTACIÓN DE LA SOLUCIÓN GENERAL:

x = x 0 + b * k

y = y0 - a * k

Por lo tanto, x % de B x puede tomar es el mínimo

Por último, tome siendo el resto habilidades usadas: el número de re-molde después de molde más mueran una sola vez

1 #include <. Bits / STDC ++ h>
 2  #define ll largo largo
 3  usando  espacio de nombres std;
4  ll a, b;
5 exgcd ll (ll a, ll b, ll y x, ll y y) {
 6      si (b == 0 ) {
 7          x = 1 ; y = 0 ;
8          volver a;
9      }
 10      ll d = exgcd (b, a% b, y, x);
11      y- = a / b * x;
12  }
 13  int main () {
 14      cin >> a >> b;
15     ll x, y;
16      exgcd (a, b, x, y);
17      cout << (x% b + b)% b << endl;
18 }

 

 

Supongo que te gusta

Origin www.cnblogs.com/hhyx/p/12640304.html
Recomendado
Clasificación