codevs 1200 同餘方程 逆元

2022-02-20 02:36:22 字數 1068 閱讀 9225

題目描述 description

求關於 x 同餘方程 ax ≡ 1 (mod b)的最小正整數解。 

輸入描述 input description

輸入只有一行,包含兩個正整數 a, b,用 乙個 空格隔開。 

輸出描述 output description

輸出只有一行包含乙個正整數x0,即最小正整數解,輸入資料保證一定有解。

樣例輸入 sample input

3 10 

樣例輸出 sample output

資料範圍及提示 data size & hint

【資料範圍】

對於 40%  的資料, 2 ≤b≤ 1,000 ;

對於 60% 的資料, 2 ≤b≤ 50,000,000 

對於 100%  的資料, 2 ≤a, b≤ 2,000,000,000

題意:求逆元

思路:因為b可能不是素數,所以利用擴充套件歐幾里德求解

#include#include#include#include#include#include#include#include#include#include#include#includeusing namespace std;

#define ll long long

//#define mod 1000000007

int scan()

res = ch - '0' ;

while( ( ch = getchar() ) >= '0' && ch <= '9' )

res = res * 10 + ( ch - '0' ) ;

return res ;

}char a[1010];

ll flag[30];

ll mod;

void extend_euclid(ll a, ll b, ll &x, ll &y)

extend_euclid(b, a % b, x, y);

ll tmp = x;

x = y;

y = tmp - (a / b) * y;

}int main()

NOIP2012 同餘方程

codevs 1200 1200 同餘方程 2012年noip全國聯賽提高組 時間限制 1 s 空間限制 128000 kb 題目等級 鑽石 diamond 題解 題目描述 description 求關於 x 同餘方程 ax 1 mod b 的最小正整數解。輸入描述 input descriptio...

1265 NOIP2012 同餘方程

輸入檔案 mod.in輸出檔案 mod.out簡單對比 時間限制 1 s 記憶體限制 128 mb 求關於 x 的同餘方程 ax 1 mod b 的最小正整數解。輸入只有一行,包含兩個正整數 a,b,用乙個空格隔開。輸出只有一行,包含乙個正整數x0,即最小正整數解。輸入資料保證一定有解。3 107對...

二次同餘方程的解

本文 今天要討論的問題是解方程 引理 證明 由費馬小定理,引理 方程有解當且僅當 定理 設 剩餘方程 證明 由 號用了費馬小定理和 在演算法實現的時候,對 題目 include include include include include include include include inclu...