рд╕реНрдЯреНрд░рд┐рдВрдЧ рдЦреЛрдЬ рдПрд▓реНрдЧреЛрд░рд┐рджрдо

рд▓рд╛рдЗрди рдореЗрдВ рдЦреЛрдЬ рд╕рдорд╕реНрдпрд╛ рдХрд╛ рд╡рд┐рд╡рд░рдг



рдЕрдХреНрд╕рд░ рдЖрдкрдХреЛ рдПрдХ рд╡рд┐рд╢рд┐рд╖реНрдЯ рдЦреЛрдЬ рд╕реЗ рдирд┐рдкрдЯрдирд╛ рдкрдбрд╝рддрд╛ рд╣реИ, рддрдерд╛рдХрдерд┐рдд рд╕реНрдЯреНрд░рд┐рдВрдЧ рдЦреЛрдЬ (рдПрдХ рд╕реНрдЯреНрд░рд┐рдВрдЧ рдореЗрдВ рдЦреЛрдЬ)ред рдЪрд▓реЛ рдХреБрдЫ рдкрд╛рда рдЯреА рдФрд░ рдПрдХ рд╢рдмреНрдж (рдпрд╛ рдЫрд╡рд┐) рдбрдмреНрд▓реНрдпреВ рд╣реИред рд╕рдВрдХреЗрддрд┐рдд рдкрд╛рда рдореЗрдВ рдЗрд╕ рд╢рдмреНрдж рдХреА рдкрд╣рд▓реА рдШрдЯрдирд╛ рдХреЛ рдЦреЛрдЬрдирд╛ рдЖрд╡рд╢реНрдпрдХ рд╣реИред рдпрд╣ рдХреНрд░рд┐рдпрд╛ рдХрд┐рд╕реА рднреА рд╡рд░реНрдб рдкреНрд░реЛрд╕реЗрд╕рд┐рдВрдЧ рд╕рд┐рд╕реНрдЯрдо рдХреА рдЦрд╛рд╕рд┐рдпрдд рд╣реИред (рд╕рд░рдгрд┐рдпреЛрдВ T рдФрд░ W рдХреЗ рддрддреНрд╡ рдХреБрдЫ рдкрд░рд┐рдорд┐рдд рд╡рд░реНрдгрдорд╛рд▓рд╛ рдХреЗ рдкреНрд░рддреАрдХ рд╣реИрдВ - рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, {0, 1}, рдпрд╛ {a, ..., z}, рдпрд╛ {a, ..., i}ред)ред



рдЗрд╕ рддрд░рд╣ рдХреЗ рдХрд╛рд░реНрдп рдХрд╛ рд╕рдмрд╕реЗ рд╡рд┐рд╢рд┐рд╖реНрдЯ рдЕрдиреБрдкреНрд░рдпреЛрдЧ рджрд╕реНрддрд╛рд╡реЗрдЬреА рдЦреЛрдЬ рд╣реИ: рджрд╕реНрддрд╛рд╡реЗрдЬреЛрдВ рдХрд╛ рдПрдХ рд╕рдВрдЧреНрд░рд╣ рдЬрд┐рд╕рдореЗрдВ рдЧреНрд░рдВрдерд╕реВрдЪреА рд╕рдВрджрд░реНрднреЛрдВ рдХреЗ рдЕрдиреБрдХреНрд░рдо рд╣реЛрддреЗ рд╣реИрдВ, рдкреНрд░рддреНрдпреЗрдХ рд▓рд┐рдВрдХ рдПрдХ "рд╡рд┐рд╡рд░рдгрдХ" рдХреЗ рд╕рд╛рде рд╣реЛрддрд╛ рд╣реИ рдЬреЛ рд╕рдВрдмрдВрдзрд┐рдд рд▓рд┐рдВрдХ рдХреЗ рд╡рд┐рд╖рдп рдХреЛ рджрд░реНрд╢рд╛рддрд╛ рд╣реИред рд╣рдореЗрдВ рд╡рд┐рд╡рд░рдгрдХрд░реНрддрд╛рдУрдВ рдХреЗ рдмреАрдЪ рдкрд╛рдП рдЬрд╛рдиреЗ рд╡рд╛рд▓реЗ рдХреБрдЫ рдХреАрд╡рд░реНрдб рдЦреЛрдЬрдиреЗ рд╣реЛрдВрдЧреЗред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдЕрдиреБрд░реЛрдз "рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ" рдФрд░ "рдЬрд╛рд╡рд╛" рд╣реЛ рд╕рдХрддрд╛ рд╣реИред рдЗрд╕ рддрд░рд╣ рдХреЗ рдЕрдиреБрд░реЛрдз рдХреА рд╡реНрдпрд╛рдЦреНрдпрд╛ рдЗрд╕ рдкреНрд░рдХрд╛рд░ рдХреА рдЬрд╛ рд╕рдХрддреА рд╣реИ: рдХреНрдпрд╛ рд╡рд░реНрдгрдирдХрд░реНрддрд╛ "рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ" рдФрд░ "рдЬрд╛рд╡рд╛" рд╡рд╛рд▓реЗ рд▓реЗрдЦ рд╣реИрдВред



рдПрдХ рд╕реНрдЯреНрд░рд┐рдВрдЧ рдЦреЛрдЬ рдХреЛ рдФрдкрдЪрд╛рд░рд┐рдХ рд░реВрдк рд╕реЗ рдирд┐рдореНрдирд╛рдиреБрд╕рд╛рд░ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред N рддрддреНрд╡реЛрдВ рдХреА рдПрдХ рд╕рд░рдгреА T рдФрд░ 0 <M .N рдХреЗ рд╕рд╛рде M рддрддреНрд╡реЛрдВ рдХреА рдПрдХ рд╕рд░рдгреА W рджреА рдЬрд╛рдПред рдПрдХ рд╕реНрдЯреНрд░рд┐рдВрдЧ рдЦреЛрдЬ рдбрдмреНрд▓реНрдпреВ рдореЗрдВ рдЯреА рдХреА рдкрд╣рд▓реА рдШрдЯрдирд╛ рдХрд╛ рдкрддрд╛ рд▓рдЧрд╛рддрд╛ рд╣реИ, рдкрд░рд┐рдгрд╛рдо рд╕реВрдЪрдХрд╛рдВрдХ рдореИрдВ рд╣реИ, рдЫрд╡рд┐ (рд╢рдмреНрдж) рдХреЗ рд╕рд╛рде рд▓рд╛рдЗрди рдХреА рд╢реБрд░реБрдЖрдд (рд╕рд░рдгреА рдЯреА рдХреА рд╢реБрд░реБрдЖрдд рд╕реЗ) рд╕реЗ рдкрд╣рд▓рд╛ рдореИрдЪ рджрд░реНрд╢рд╛рддрд╛ рд╣реИред

рдПрдХ рдЙрджрд╛рд╣рд░рдг рд╣реИред рдкрд╛рда T = abcabaabcabca рдореЗрдВ рдкреИрдЯрд░реНрди W = abaa рдХреА рд╕рднреА рдШрдЯрдирд╛рдУрдВ рдХреЛ рдЦреЛрдЬрдирд╛ рдЖрд╡рд╢реНрдпрдХ рд╣реИред



рдирдореВрдирд╛ рдХреЛ рдХреЗрд╡рд▓ рдПрдХ рдмрд╛рд░ рдкрд╛рда рдореЗрдВ рд╢рд╛рдорд┐рд▓ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдЬрд┐рд╕рдореЗрдВ S = 3, рдЗрдВрдбреЗрдХреНрд╕ i = 4 рдХрд╛ рдмрджрд▓рд╛рд╡ рд╣реИред



рдкреНрд░рддреНрдпрдХреНрд╖ рдЦреЛрдЬ рдПрд▓реНрдЧреЛрд░рд┐рдереНрдо





рдПрд▓реНрдЧреЛрд░рд┐рдереНрдо рдХрд╛ рд╡рд┐рдЪрд╛рд░:

1. рдореИрдВ = 1,

2. рд╕рд░рдгреА T рдХреЗ рдкрд╣рд▓реЗ рд╡рд░реНрдг рдХреЗ рд╕рд╛рде рд╕рд░рдгреА T рдХреЗ I-th рд╡рд░реНрдг рдХреА рддреБрд▓рдирд╛ рдХрд░реЗрдВ,

3. рдореИрдЪ тЖТ рджреВрд╕рд░реЗ рдкрд╛рддреНрд░реЛрдВ рдФрд░ рдЗрддрдиреЗ рдкрд░ рддреБрд▓рдирд╛ рдХрд░реЗрдВ,

4. рдмреЗрдореЗрд▓ тЖТ I: = I + 1 рдФрд░ рдмрд┐рдВрджреБ 2 рдкрд░ рдЬрд╛рдПрдВ,



рдПрд▓реНрдЧреЛрд░рд┐рдереНрдо рд╕рдорд╛рдкреНрддрд┐ рдХреА рд╕реНрдерд┐рддрд┐:

1. рдПрдХ рдкрдВрдХреНрддрд┐ рдореЗрдВ рдПрдо рддреБрд▓рдирд╛ рд╕рдлрд▓ рд░рд╣реЗ рд╣реИрдВ,

2. I + M> N, рдЕрд░реНрдерд╛рдд рд╢рдмреНрдж рдирд╣реАрдВ рдорд┐рд▓рд╛ред



рдПрд▓реНрдЧреЛрд░рд┐рдердо рдЬрдЯрд┐рд▓рддрд╛:

рд╕рдмрд╕реЗ рдЦрд░рд╛рдм рдорд╛рдорд▓рд╛ред рдПрдХ рд╕рд░рдгреА T тЖТ {AAA ... .AAAB}, рдПрдХ рд▓рдВрдмрд╛рдИ тФВT N = N, рдПрдХ рдирдореВрдирд╛ W тЖТ {A ... .AB}, рдПрдХ рд▓рдВрдмрд╛рдИ тФВWтФВ = Mред рдЬрд╛рд╣рд┐рд░ рд╣реИ, рд▓рд╛рдЗрди рдХреЗ рдЕрдВрдд рдореЗрдВ рдПрдХ рдореИрдЪ рдЦреЛрдЬрдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЛ рдПрди * рдПрдо рддреБрд▓рдирд╛, рдпрд╛рдиреА рдУ (рдПрди * рдПрдо) рдХрд╛ рдПрдХ рдЖрджреЗрд╢ рдмрдирд╛рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред



рдПрд▓реНрдЧреЛрд░рд┐рдереНрдо рдХреЗ рдиреБрдХрд╕рд╛рди:

1. рдЙрдЪреНрдЪ рдЬрдЯрд┐рд▓рддрд╛ - рдУ (рдПрди * рдПрдо), рд╕рдмрд╕реЗ рдЦрд░рд╛рдм рд╕реНрдерд┐рддрд┐ рдореЗрдВ - (((рдПрди-рдПрдо + 1) * рдПрдо);

2. рдПрдХ рдорд┐рд╕рдореИрдЪ рдХреЗ рдмрд╛рдж, рджреЗрдЦрдирд╛ рд╣рдореЗрд╢рд╛ рдирдореВрдиреЗ рдХреЗ рдкрд╣рд▓реЗ рдЪрд░рд┐рддреНрд░ рд╕реЗ рд╢реБрд░реВ рд╣реЛрддрд╛ рд╣реИ рдФрд░ рдЗрд╕рд▓рд┐рдП рдЗрд╕рдореЗрдВ рдЯреА рдЕрдХреНрд╖рд░ рд╢рд╛рдорд┐рд▓ рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВ рдЬреЛ рдкрд╣рд▓реЗ рджреЗрдЦреЗ рдЧрдП рдереЗ (рдпрджрд┐ рд╕реНрдЯреНрд░рд┐рдВрдЧ рдХреЛ рджреНрд╡рд┐рддреАрдпрдХ рдореЗрдореЛрд░реА рд╕реЗ рдкрдврд╝рд╛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ рдРрд╕реЗ рд░рд┐рдЯрд░реНрди рдореЗрдВ рдмрд╣реБрдд рд╕рдордп рд▓рдЧрддрд╛ рд╣реИ);

3. рдЗрд╕ рд╢рд┐рдлреНрдЯ S рдХреА рдЬрд╛рдБрдЪ рдХрд░рдХреЗ рдкреНрд░рд╛рдкреНрдд рдкрд╛рда T рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЬрд╛рдирдХрд╛рд░реА рдХрд┐рд╕реА рднреА рддрд░рд╣ рд╕реЗ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХреА рдЬрд╛рддреА рд╣реИ рдЬрдм рдмрд╛рдж рдХреА рдкрд╛рд▓реА рдХреА рдЬрд╛рдБрдЪ рдХреА рдЬрд╛рддреА рд╣реИред



рдбреАред рдиреБрде, рдбреАред рдореМрд░рд┐рд╕ рдФрд░ рд╡реАред рдкреНрд░реИрдЯ (рдХреЗрдПрдордкреА-рдЦреЛрдЬ) рдХрд╛ рдПрд▓реНрдЧреЛрд░рд┐рдердо





рдХреЗрдПрдордкреА рдЦреЛрдЬ рдПрд▓реНрдЧреЛрд░рд┐рджрдо рдХреЛ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдХреЗрд╡рд▓ рдПрди рддреБрд▓рдирд╛ рдХреЗ рдЖрджреЗрд╢ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИ рдпрд╣рд╛рдВ рддрдХ тАЛтАЛрдХрд┐ рд╕рдмрд╕реЗ рдЦрд░рд╛рдм рд╕реНрдерд┐рддрд┐ рдореЗрдВ рднреАред

рдПрдХ рдЙрджрд╛рд╣рд░рдг рд╣реИред

(рддреБрд▓рдирд╛ рдкрд╛рддреНрд░реЛрдВ рдХреЛ рд░реЗрдЦрд╛рдВрдХрд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред)





рд╕реНрдЯреНрд░рд┐рдВрдЧ T рдХреЗ рд╕рдВрдЧрдд рд╡рд░реНрдгреЛрдВ рдХреЗ рд╕рд╛рде рдЫрд╡рд┐ W рдХреЗ рдкреНрд░рд╛рд░рдВрднрд┐рдХ рднрд╛рдЧ рдХреЗ рдЖрдВрд╢рд┐рдХ рд╕рдВрдпреЛрдЧ рдХреЗ рдмрд╛рдж, рд╣рдо рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рд╕реНрдЯреНрд░рд┐рдВрдЧ рдХреЗ рдЙрддреНрддреАрд░реНрдг рднрд╛рдЧ рдХреЛ рдЬрд╛рдирддреЗ рд╣реИрдВ рдФрд░ рдХреБрдЫ рдЬрд╛рдирдХрд╛рд░реА (рдбрдмреНрд▓реНрдпреВ рдЦреБрдж рдХреА рдЫрд╡рд┐ рдХреЗ рдЖрдзрд╛рд░ рдкрд░) рдХреА "рдЧрдгрдирд╛" рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдЬрд┐рд╕рдХреА рдорджрдж рд╕реЗ рд╣рдо рдкрд╛рда рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдЬрд▓реНрджреА рд╕реЗ рдЖрдЧреЗ рдмрдврд╝реЗрдВрдЧреЗред



рдХреЗрдПрдордкреА рдЦреЛрдЬ рдХрд╛ рд╡рд┐рдЪрд╛рд░ рдпрд╣ рд╣реИ рдХрд┐ рдкрд╛рда рдФрд░ рдЫрд╡рд┐ рдХреЗ рджреЛ рдкрд╛рддреНрд░реЛрдВ рдХреЗ рдмреАрдЪ рдкреНрд░рддреНрдпреЗрдХ рдмреЗрдореЗрд▓ рдХреЗ рд╕рд╛рде, рдЫрд╡рд┐ рдХреЛ рдкреВрд░реА рджреВрд░реА рдХреА рдпрд╛рддреНрд░рд╛ рджреНрд╡рд╛рд░рд╛ рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рдХрд░ рджрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдЫреЛрдЯреА рдкрд╛рд░рд┐рдпреЛрдВ рд╕реЗ рдкреВрд░реНрдг рдореИрдЪ рдирд╣реАрдВ рд╣реЛ рд╕рдХрддрд╛ рд╣реИред



KMP рдЦреЛрдЬ рдХреА рд╡рд┐рд╢реЗрд╖рддрд╛рдПрдВ:

1. рдкрд░рд┐рдгрд╛рдо рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП (рдПрди + рдПрдо) рд╡рд░реНрдг рддреБрд▓рдирд╛ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИ;

2. рдХреЗрдПрдордкреА-рдЦреЛрдЬ рдпреЛрдЬрдирд╛ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рд▓рд╛рдн рддрднреА рджреЗрддреА рд╣реИ рдЬрдм рдХреБрдЫ рдирд┐рд╢реНрдЪрд┐рдд рд╕рдВрдЦреНрдпрд╛ рдореЗрдВ рдореИрдЪ рдЕрд╕рдлрд▓рддрд╛ рд╕реЗ рдкрд╣рд▓реЗ рд╣реЛрддреЗ рд╣реИрдВред рдХреЗрд╡рд▓ рдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ рдЫрд╡рд┐ рдПрдХ рд╕реЗ рдЕрдзрд┐рдХ рдмрджрд▓рд╛рд╡ рдХрд░рддреА рд╣реИред рджреБрд░реНрднрд╛рдЧреНрдп рд╕реЗ, рд╕рдВрдпреЛрдЧ рдмреЗрдореЗрд▓ рд╕реЗ рдмрд╣реБрдд рдХрдо рд╣реИрдВред рдЗрд╕рд▓рд┐рдП, рдХреЗрдПрдордкреА рдЦреЛрдЬ рд╕реЗ рдЧреНрд░рдВрдереЛрдВ рдХреЗ рдЕрдзрд┐рдХрд╛рдВрд╢ рдорд╛рдорд▓реЛрдВ рдореЗрдВ рд▓рд╛рдн рдмрд╣реБрдд рд╣реА рдорд╣рддреНрд╡рд╣реАрди рд╣реИред



рдЖрд░ред рдмреЛрд╡рд░ рдФрд░ рдбреАред рдореВрд░ рдХрд╛ рдПрд▓реНрдЧреЛрд░рд┐рдереНрдо (рдмреАрдПрдо рдЦреЛрдЬ)





рд╡реНрдпрд╡рд╣рд╛рд░ рдореЗрдВ, BM рдЦреЛрдЬ рдПрд▓реНрдЧреЛрд░рд┐рдереНрдо рд╕рдмрд╕реЗ рдкреНрд░рднрд╛рд╡реА рд╣реИ рдпрджрд┐ рдкреИрдЯрд░реНрди W рд▓рдВрдмрд╛ рд╣реИ рдФрд░ рд╡рд░реНрдгрдорд╛рд▓рд╛ рдХреА рд╢рдХреНрддрд┐ рдХрд╛рдлреА рдмрдбрд╝реА рд╣реИред



BM рдЦреЛрдЬ рдХрд╛ рд╡рд┐рдЪрд╛рд░ рдпрд╣ рд╣реИ рдХрд┐ рд╡рд░реНрдгреЛрдВ рдХреА рддреБрд▓рдирд╛ рдкреИрдЯрд░реНрди рдХреЗ рдЕрдВрдд рд╕реЗ рд╢реБрд░реВ рд╣реЛрддреА рд╣реИ, рди рдХрд┐ рд╢реБрд░реБрдЖрдд рд╕реЗ, рдЕрд░реНрдерд╛рддреН рд╡реНрдпрдХреНрддрд┐рдЧрдд рд╡рд░реНрдгреЛрдВ рдХреА рддреБрд▓рдирд╛ рджрд╛рдПрдВ рд╕реЗ рдмрд╛рдПрдВ рд╣реЛрддреА рд╣реИред рдлрд┐рд░, рдПрдХ рдирд┐рд╢реНрдЪрд┐рдд рд╣реЗрдпреБрд░рд┐рд╕реНрдЯрд┐рдХ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ, рджрд╛рдИрдВ рдУрд░ рдХреА рд╢рд┐рдлреНрдЯ рдХреА рдЧрдгрдирд╛ рдХреА рдЬрд╛рддреА рд╣реИред рдлрд┐рд░ рд╕реЗ, рдкреИрдЯрд░реНрди рдХреЗ рдЕрдВрдд рдореЗрдВ рдкрд╛рддреНрд░реЛрдВ рдХреА рддреБрд▓рдирд╛ рд╢реБрд░реВ рдХреА рдЬрд╛рддреА рд╣реИред



рдпрд╣ рд╡рд┐рдзрд┐ рди рдХреЗрд╡рд▓ рд╕рдмрд╕реЗ рдЦрд░рд╛рдм рд╕реНрдерд┐рддрд┐ рд╕реЗ рдирд┐рдкрдЯрдиреЗ рдореЗрдВ рд╕реБрдзрд╛рд░ рдХрд░рддреА рд╣реИ, рдмрд▓реНрдХрд┐ рдордзреНрдпрд╡рд░реНрддреА рд╕реНрдерд┐рддрд┐рдпреЛрдВ рдореЗрдВ рдПрдХ рдЬреАрдд рднреА рджреЗрддреА рд╣реИред

рд▓рдЧрднрдЧ рд╣рдореЗрд╢рд╛, рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ рдирд┐рд░реНрдорд┐рдд рдЙрджрд╛рд╣рд░рдгреЛрдВ рдХреЛ рдЫреЛрдбрд╝рдХрд░, рдмреАрдПрдо рдЦреЛрдЬ рдХреЛ рдХрд╛рдлреА рдХрдо рдПрди рддреБрд▓рдирд╛ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИред рд╕рдмрд╕реЗ рдЕрдиреБрдХреВрд▓ рдкрд░рд┐рд╕реНрдерд┐рддрд┐рдпреЛрдВ рдореЗрдВ, рдЬрдм рдирдореВрдиреЗ рдХрд╛ рдЕрдВрддрд┐рдо рд╡рд░реНрдг рд╣рдореЗрд╢рд╛ рдкрд╛рда рдХреЗ рдмреЗрдореЗрд▓ рдЪрд░рд┐рддреНрд░ рдкрд░ рдкрдбрд╝рддрд╛ рд╣реИ, рддреЛ рддреБрд▓рдирд╛ рдХреА рд╕рдВрдЦреНрдпрд╛ (N / M) рд╣реЛрддреА рд╣реИ, рд╕рдмрд╕реЗ рдЦрд░рд╛рдм рд╕реНрдерд┐рддрд┐ рдореЗрдВ, O ((N-M + 1) * M + p), рдЬрд╣рд╛рдВ p рд╡рд░реНрдгрдорд╛рд▓рд╛ рдХреА рд╢рдХреНрддрд┐ рд╣реИ ред



рд░рд╛рдмрд┐рди-рдХрд╛рд░реНрдк рдПрд▓реНрдЧреЛрд░рд┐рдереНрдо (рдЖрд░рдХреЗ-рдЦреЛрдЬ)





рд╡рд░реНрдгрдорд╛рд▓рд╛ D = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9}, рдЕрд░реНрдерд╛рддреН, рд╡рд░реНрдгрдорд╛рд▓рд╛ рдореЗрдВ рдкреНрд░рддреНрдпреЗрдХ рд╡рд░реНрдг рдПрдХ d - рджрд╢рдорд▓рд╡ рдЕрдВрдХ рд╣реИ, рдЬрд╣рд╛рдВ d = тФВDтФВред



рдПрдХ рдЙрджрд╛рд╣рд░рдг рд╣реИред рдирдореВрдиреЗ рдХреЗ рдкрд╛рд╕ W = 3 1 4 1 5 рд╣реИ

рд╣рдо рд▓рдВрдмрд╛рдИ рдХреА рдЦрд┐рдбрд╝рдХреА рд╕реЗ рд╕рдВрдЦреНрдпрд╛рдУрдВ рдХреЗ рдореВрд▓реНрдпреЛрдВ рдХреА рдЧрдгрдирд╛ рдХрд░рддреЗ рд╣реИрдВ | W = = 5 рдХреЗ рд╕рд╛рде mod q, q рдПрдХ рдЕрднрд╛рдЬреНрдп рд╣реИред





23590 (рдореЙрдб 13) = 8, 35902 (рдореЙрдб 13) = 9, 59023 (рдореЙрдб 13) = 9, ...

k1 = 31415яВ║7 (рдореЙрдб 13) - рдирдореВрдиреЗ рдХрд╛ рдкреНрд░рд╡реЗрд╢,

k2 = 67399яВ║7 (рдореЙрдб 13) - рдирд┐рд╖реНрдХреНрд░рд┐рдп рд╕рдВрдЪрд╛рд▓рдиред



рдпрд╣ рд╕рдорд╛рдирддрд╛ ki = kj (mod q) рд╕реЗ рдЕрдиреБрд╕рд░рдг рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ рдХрд┐ ki = kj (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, 31415 = 67399 (mod 13)), рд▓реЗрдХрд┐рди рдЗрд╕рдХрд╛ рдорддрд▓рдм рдпрд╣ рдирд╣реАрдВ рд╣реИ рдХрд┐ 31415 = 67399)ред рдпрджрд┐ ki = kj (mod q), рддреЛ рд╣рдореЗрдВ рдЕрднреА рднреА рдпрд╣ рдЬрд╛рдВрдЪрдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ рдХрд┐ рдХреНрдпрд╛ рд▓рд╛рдЗрдиреЗрдВ W [1 ... m] рдФрд░ T [s + 1 ... s + m] рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдореЗрд▓ рдЦрд╛рддреА рд╣реИрдВред

рдпрджрд┐ рдкреНрд░рд╛рдЗрдо рдХреНрдпреВ рдХрд╛рдлреА рдмрдбрд╝рд╛ рд╣реИ, рддреЛ рдирд┐рд╖реНрдХреНрд░рд┐рдп рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛рдУрдВ рдХрд╛ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдХрд░рдиреЗ рдХреА рдЕрддрд┐рд░рд┐рдХреНрдд рд▓рд╛рдЧрдд рдЫреЛрдЯреА рд╣реЛрдЧреАред

рд╕рдмрд╕реЗ рдЦрд░рд╛рдм рд╕реНрдерд┐рддрд┐ рдореЗрдВ, рдЖрд░рдХреЗ рдПрд▓реНрдЧреЛрд░рд┐рдереНрдо рдХрд╛ рд░рдирдЯрд╛рдЗрдо (((рдПрди-рдПрдо + 1) * рдПрдо) рд╣реИ, рдФрд╕рддрди, рдпрд╣ рдХрд╛рдлреА рддреЗрдЬреА рд╕реЗ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ - рдУ (рдПрди + рдПрдо) рд╕рдордп рдХреЗ рджреМрд░рд╛рдиред



рдЙрджрд╛рд╣рд░рдг: рдЖрд░рдХреЗ рдПрд▓реНрдЧреЛрд░рд┐рдереНрдо рдХрд┐рддрдиреЗ рд░рд┐рдХреНрдд рд╕реНрдерд╛рди рдХрд╛ рдирд┐рд░реНрдорд╛рдг рдХрд░реЗрдЧрд╛

q = 11, 13, 17. Let W = {2 6}



26 mod 11 = 4 тЖТ k = 3 рдирд┐рд╖реНрдХреНрд░рд┐рдп рдпрд╛рддреНрд░рд╛рдПрдВ,

26 mod 13 = 0 тЖТ k = 1 рдирд┐рд╖реНрдХреНрд░рд┐рдп,

26 mod 17 = 9 тЖТ k = 0 рдирд┐рд╖реНрдХреНрд░рд┐рдп рд╕рдордпред



рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ, рдмреНрд▓реИрдВрдХ k рдХреА рд╕рдВрдЦреНрдпрд╛ рдЕрднрд╛рдЬреНрдп рд╕рдВрдЦреНрдпрд╛ рдХрд╛ рдПрдХ рдлрд╝рдВрдХреНрд╢рди рд╣реИ (рдпрджрд┐ рдирдореВрдирд╛ рдкреНрд░рд╕рдВрд╕реНрдХрд░рдг рдлрд╝рдВрдХреНрд╢рди mod q рд╣реИ) рдФрд░, рд╕рд╛рдорд╛рдиреНрдп рд╕реНрдерд┐рддрд┐ рдореЗрдВ, рдирдореВрдирд╛ W рдФрд░ рдкрд╛рда T рдХреЛ рд╕рдВрд╕рд╛рдзрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдлрд╝рдВрдХреНрд╢рди рдХрд╛ рдкреНрд░рдХрд╛рд░ред




All Articles