整数のモジュラーモジュラ逆数 モジュロ mは 整数であり 、X ように 。これは同等です 。a-1≡x (mod m)
ax≡1 (mod m)
入力
複数のテストケースがあります。入力の最初の行は、整数である Tの テストケースの数を示す≈2000。
各テストケースは、二つの整数0 <含ま ≤1000および0 < M ≤1000。
出力
各テストケースのために、出力最小の正 のx。そのような場合は 、xが 存在しない、出力が「存在しません」。
サンプル入力
3 3 11 4 12 5 13
サンプル出力
4 存在しませ 8
1の#include <iostreamの> 2の#include <CStringの> 3の#include <アルゴリズム> 4の#include <地図> 5 使って 名前空間STDを、 6 7のtypedef 長い 長LL。 8 9 int型T。 10 int型A、B、X、Y。 11 12 INTの GDC(INT A、INT B){ 13 リターン Bの== 0:GDC(B、%のB)。 14 } 15 16 空隙 exgdc(INT、int型 B、INT&X、INT&Y){ 17 場合(Bの== 0 ){ 18 X = 1 。 19 Y = 0 。 20 リターン; 21 } 22 exgdc(B、%のB、X、Y)。 23 int型温度= X; 24 X = Y。 25 Y = TEMP-A / B * Y。 26 } 27 28 29 INT メイン(){ 30の IOS :: sync_with_stdio(偽)。 31 一方(CIN >> T){ 32 ながら(t-- ){ 33 CIN >> A >> B。 34 INT GDC = GDC(B) 35 場合(1!%のGDC = 0){COUT << " 存在しませ" << ENDL。引き続き;} 36 exgdc(A、B、X、Y)。 37 INT RES = X *(1 / GDC)。 38 INT ANS = B / GDC。 39 であれば(ANS < 0)ANS = - ANS。 40 %=のRESのANS; 41は、 IF(RESが<= 0 ;)= RES + ANS // の正数であるトピック 42である << << COUT RES ENDL; 43である } 44である } 45 リターン 0 ; 46れます }