線形合同式の係数に発現奇数の実施形態(不互いに素

問題の意味

所与2N整数、A 1、A 2、...、A N-、 M 1、M 2、...、M N -

最小の正の整数xを求め、満足≦I≦N∀、XのM≡ I(A MOD I

解「-1」、または最小の正の整数xの出力がない場合

データ範囲:

1≤ ≤2 31 -1

1≤M I < I

1≤N≤25

説明

まず最初の2つの式を考えてみます。

X≡M 1  (MOD 1 ↔X = K)1 * 1 + M 1

X≡M 2  (MOD 2 ↔X = K)2  * 2  + M 2

K 1  * 1  + M 1 K 2  * 2  + M 2

K 1  * 1  -k 2  * 2  = M 2 -M1

どのような決定です策はありませんGCD(A 1、A 2)|(メートル2 -M1)が 確立されています

ヨーロッパの膨張を測定  Kを1つの  * A 。1  -k 2  * A 2  = GCD(A 1、A 2 ソリューションK 1 ''およびK 2 '

K 1「= K 1 '' *(M2-M1)/ GCD(12) 

K 2「= K 2 '' *(M2-M1)/ GCD(12) 

K = X 1  * A 1  + M 1またはK = X 2  * A 2  + M 2は、 xの解によって得ることができます

前記K 1一般解K = + K *(A 2 / GCD(A 1、A 2))明らかにK 1、取得した最小のx最小

しかし、後ろの式が新しい制約と合併する場合、

xの最小値は、特定のxを見つけることができませんし、それを変更することができ、

Kにより得られた1又はK 2の新しい合同方程式の一般解を構成します

K 1一般的な解K = 1 '  + K *(2 / GCD(A 1、A 2))X = K 1つの  * A 1  + M 1

X =(K 1 '  + K×(2 / GCD(12)))* 1  + M 1

X = K *( * 2)/ GCD(12)+ K 1「* A 1 + M 1

'=( * )/ GCD(12)、M' = K 1「* A 1 + M 1

X = K * '+ M'

K = X 3  *の3  + Mなし3

続いて、K-1に合流最小のx Kに応じて決定することは、一般的な解決策であります

K = K 0  + T *(N / GCD(」、N)) 

明確K 0%(A N- / GCD(A」、N-)) すなわち、最小の溶液

おすすめ

転載: www.cnblogs.com/hhyx/p/12650252.html