рд╕реИрдЯ рд╕реЙрд▓реНрд╡рд░ рдХреЗ рд╕рд╛рде рдЬрд╛рдкрд╛рдиреА рд╡рд░реНрдЧ рдкрд╣реЗрд▓реА рдХреЛ рд╣рд▓ рдХрд░реЗрдВ

Habr├й рдкрд░ рдЬрд╛рдкрд╛рдиреА рд╡рд░реНрдЧ рдкрд╣реЗрд▓реА рдХреЛ рд╣рд▓ рдХрд░рдиреЗ рдкрд░ рдХрдИ рд▓реЗрдЦ рдереЗ, рдЬрд╣рд╛рдБ рд▓реЗрдЦрдХ рдЗрд╕ рддрд░рд╣ рдХреЗ рд╡рд░реНрдЧ рдкрд╣реЗрд▓реА рдХреЛ рд╣рд▓ рдХрд░рдиреЗ рдХреЗ рд╡рд┐рднрд┐рдиреНрди рддрд░реАрдХреЛрдВ рдХреЗ рд╕рд╛рде рдЖрдП рдереЗред рд▓реЗрдЦ рдХреА рдЯрд┐рдкреНрдкрдгреА рдореЗрдВ рдкреНрд░рдХрд╛рд╢ рдХреА рдЧрддрд┐ рдХреЗ рд╕рд╛рде рдЬрд╛рдкрд╛рдиреА рд░рдВрдЧ рд╡рд░реНрдЧ рдкрд╣реЗрд▓реА рдХреЛ рд╣рд▓ рдХрд░рддреЗ рд╣реБрдП, рдореИрдВрдиреЗ рд╕реБрдЭрд╛рд╡ рджрд┐рдпрд╛ рдХрд┐ рдЪреВрдВрдХрд┐ рдЬрд╛рдкрд╛рдиреА рд╡рд░реНрдЧ рдкрд╣реЗрд▓реА рд╣рд▓ рдХрд░рдирд╛ рдПрдХ рдПрдирдкреА-рдкреВрд░реНрдг рд╕рдорд╕реНрдпрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдЙрдиреНрд╣реЗрдВ рдЙрдЪрд┐рдд рдЙрдкрдХрд░рдг рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рд╣рд▓ рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП, рдЕрд░реНрдерд╛рддреН рд╕реИрдЯ рд╕реЙрд▓реНрд╡рд░ред рдЪреВрдВрдХрд┐ рдореЗрд░рд╛ рд╡рд┐рдЪрд╛рд░ рд╕рдВрд╢рдпрд╡рд╛рдж рд╕реЗ рдорд┐рд▓рд╛ рдерд╛, рдЗрд╕рд▓рд┐рдП рдореИрдВрдиреЗ рдЗрд╕реЗ рд▓рд╛рдЧреВ рдХрд░рдиреЗ рдФрд░ рдЕрдиреНрдп рджреГрд╖реНрдЯрд┐рдХреЛрдгреЛрдВ рдХреЗ рд╕рд╛рде рдкрд░рд┐рдгрд╛рдореЛрдВ рдХреА рддреБрд▓рдирд╛ рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░рдиреЗ рдХрд╛ рдирд┐рд░реНрдгрдп рд▓рд┐рдпрд╛ред рдЗрд╕рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдХреНрдпрд╛ рдкрддрд╛ рдХрдЯ рдХреЗ рддрд╣рдд рдорд┐рд▓ рд╕рдХрддрд╛ рд╣реИред

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

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

рд╕рд╛рдорд╛рдиреНрдп рд░реВрдк рд╕реЗ рдЗрд╕ рд╕рдорд╕реНрдпрд╛ рдХрд╛ рдкреНрд░рддрд┐рдирд┐рдзрд┐рддреНрд╡ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рд╣рдо рдлрд╝реАрд▓реНрдб рдореЗрдВ рдкреНрд░рддреНрдпреЗрдХ рд╕реЗрд▓ рдХреЗ рд▓рд┐рдП рдПрдХ рдмреВрд▓рд┐рдпрди рдЪрд░ рдФрд░ рдкрдВрдХреНрддрд┐рдпреЛрдВ рдФрд░ рд╕реНрддрдВрднреЛрдВ рдореЗрдВ рдкреНрд░рддреНрдпреЗрдХ рдмреНрд▓реЙрдХ рдХреА рдкреНрд░рддреНрдпреЗрдХ рд╕рдВрднрд╛рд╡рд┐рдд рд╕реНрдерд┐рддрд┐ рдХреЗ рд▓рд┐рдП рдПрдХ рдЪрд░ рдХрд╛ рдкрд░рд┐рдЪрдп рджреЗрддреЗ рд╣реИрдВред рдмреБрд▓рд┐рдпрди рдлрд╝реАрд▓реНрдб рдХреЗ рд╕реЗрд▓ рдХреЗ рд▓рд┐рдП, рдПрдХ рд╡реЗрд░рд┐рдПрдмрд▓ рдХрд╛ рдорддрд▓рдм рд╣реЛрдЧрд╛ рдХрд┐ рджреА рдЧрдИ рд╕реЗрд▓ рд░рдВрдЧреАрди рд╣реИ рдпрд╛ рдирд╣реАрдВ, рдФрд░ рдмреБрд▓рд┐рдпрди рдмреНрд▓реЙрдХ рдХреА рд╕реНрдерд┐рддрд┐ рдХреЗ рд▓рд┐рдП, рдПрдХ рд╡реЗрд░рд┐рдПрдмрд▓ рдХрд╛ рдорддрд▓рдм рд╣реЛрдЧрд╛ рдХрд┐ рдпрд╣ рдмреНрд▓реЙрдХ рдЗрд╕ рд╕реНрдерд┐рддрд┐ рдореЗрдВ рдореМрдЬреВрдж рд╣реИ рдпрд╛ рдирд╣реАрдВред рд╣рдо рдЪрд░ (рдЦрдВрдб) рдХреЗ рдмреАрдЪ рдЖрд╡рд╢реНрдпрдХ рд╕рдВрдмрдВрдз рд▓рд┐рдЦрддреЗ рд╣реИрдВ:

1. рдкрдВрдХреНрддрд┐ рдпрд╛ рд╕реНрддрдВрдн рдореЗрдВ рдШреЛрд╖рд┐рдд рдкреНрд░рддреНрдпреЗрдХ рдмреНрд▓реЙрдХ рдХрдо рд╕реЗ рдХрдо рдПрдХ рд╕реНрдерд┐рддрд┐ рдореЗрдВ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред рдпрд╣ рдкреНрд░рдкрддреНрд░ (X1 V X2 V ... XN) рдХреЗ рдПрдХ рдЦрдВрдб рд╕реЗ рдореЗрд▓ рдЦрд╛рддреА рд╣реИ, рдЬрд╣рд╛рдВ X1, X2 ... XN рдПрдХ рдкрдВрдХреНрддрд┐ рдпрд╛ рд╕реНрддрдВрдн рдореЗрдВ рдЗрд╕ рдмреНрд▓реЙрдХ рдХреЗ рд╕рднреА рд╕рдВрднрд╛рд╡рд┐рдд рд╕реНрдерд╛рди рд╣реИрдВред

2. рдПрдХ рдкрдВрдХреНрддрд┐ рдпрд╛ рд╕реНрддрдВрдн рдореЗрдВ рдкреНрд░рддреНрдпреЗрдХ рдмреНрд▓реЙрдХ рдПрдХ рд╕реЗ рдЕрдзрд┐рдХ рдмрд╛рд░ рдирд╣реАрдВ рджрд┐рдЦрд╛рдИ рджреЗрдирд╛ рдЪрд╛рд╣рд┐рдПред рдпрд╣ рдкреНрд░рдкрддреНрд░ рдХреЗ рдХрдИ рдЦрдВрдб (рдЧреНрдпрд╛рд░рд╣рд╡реАрдВ рдирд╣реАрдВ) рд╡реА (рдПрдХреНрд╕рдЬреЗ рдирд╣реАрдВ) рд╕реЗ рдореЗрд▓ рдЦрд╛рддреА рд╣реИ, рдЬрд╣рд╛рдВ рд╢реА, рдПрдХреНрд╕рдЬреЗ (i! = J) рдПрдХ рдкрдВрдХреНрддрд┐ рдпрд╛ рд╕реНрддрдВрдн рдореЗрдВ рдЗрд╕ рдмреНрд▓реЙрдХ рдХреЗ рд╕рднреА рд╕рдВрднрд╛рд╡рд┐рдд рд╕реНрдерд╛рди рд╣реИрдВред

3. рдмреНрд▓реЙрдХ рдХрд╛ рд╕рд╣реА рдХреНрд░рдоред рдЪреВрдВрдХрд┐ рдмреНрд▓реЙрдХреЛрдВ рдХреА рд╡реНрдпрд╡рд╕реНрдерд╛ рдХреЗ рд╕рд╣реА рдХреНрд░рдо рдХреЛ рдмрдирд╛рдП рд░рдЦрдирд╛ рдЖрд╡рд╢реНрдпрдХ рд╣реИ, рд╕рд╛рде рд╣реА рд╕рд╛рде рдЙрдирдХреЗ рдЪреМрд░рд╛рд╣реЗ рдХреЛ рдЦрддреНрдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдкреНрд░рдкрддреНрд░ (рди рдХрд┐ рдЧреНрдпрд╛рд░рд╣рд╡реАрдВ) рд╡реА (рдПрдХреНрд╕рдЬреЗ рдирд╣реАрдВ) рдХреЗ рдЦрдВрдб рдХреЛ рдЬреЛрдбрд╝рдирд╛ рдЖрд╡рд╢реНрдпрдХ рд╣реИ, рдЬрд╣рд╛рдВ рд╢реА, рдПрдХреНрд╕рдЬреЗ рд╡рд┐рднрд┐рдиреНрди рдмреНрд▓реЙрдХреЛрдВ рдХреЗ рдкрджреЛрдВ рдХреЗ рдЕрдиреБрд░реВрдк рдЪрд░ рд╣реИрдВ рдЬреЛ рдЧрд▓рдд рдХреНрд░рдо рдпрд╛ рдкреНрд░рддрд┐рдЪреНрдЫреЗрдж рд╣реИрдВред

4. рджрд╛рдЧ рд╡рд╛рд▓реА рд╕реЗрд▓ рдХрдо рд╕реЗ рдХрдо рдПрдХ рдмреНрд▓реЙрдХ рдореЗрдВ рд╣реЛрдиреА рдЪрд╛рд╣рд┐рдП, рдЬрд┐рд╕рдХреА рд╕реНрдерд┐рддрд┐ рдореЗрдВ рдпрд╣ рд╕реЗрд▓ рд╢рд╛рдорд┐рд▓ рд╣реЛред рдпрд╣ рдкреНрд░рдкрддреНрд░ ((Xk рдирд╣реАрдВ) V X1 V X2 ... XN) рдХреЗ рдПрдХ рдЦрдВрдб рд╕реЗ рдореЗрд▓ рдЦрд╛рддреА рд╣реИ, рдЬрд╣рд╛рдВ Xk рд╕реЗрд▓ рдХреЗ рдЕрдиреБрд░реВрдк рдЪрд░ рд╣реИ, рдФрд░ X1, X2 ... XN рдЗрд╕ рд╕реЗрд▓ рдХреЗ рдмреНрд▓реЙрдХ рдХреЗ рдкрджреЛрдВ рдХреЗ рдЕрдиреБрд░реВрдк рдЪрд░ рд╣реИрдВред

5. рдкреНрд░рддреНрдпреЗрдХ рдЦрд╛рд▓реА рд╕реЗрд▓ рдХреЛ рдХрд┐рд╕реА рдПрдХ рдмреНрд▓реЙрдХ рдХреА рдХрд┐рд╕реА рднреА рд╕рдВрднрд╛рд╡рд┐рдд рд╕реНрдерд┐рддрд┐ рдореЗрдВ рд╕рдорд╛рд╣рд┐рдд рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред рдпрд╣ рдЬрд╝реА рд╡реА (рдПрдХреНрд╕рдЬреЗ рдирд╣реАрдВ) рдлреЙрд░реНрдо рдХреЗ рдХрдИ рдЦрдВрдбреЛрдВ рд╕реЗ рдореЗрд▓ рдЦрд╛рддрд╛ рд╣реИ, рдЬрд╣рд╛рдВ рд╢реА рд╕реЗрд▓ рдХреЗ рдЕрдиреБрд░реВрдк рдЪрд░ рд╣реИ, рдФрд░ рдПрдХреНрд╕рдЬреЗ рдЗрд╕ рд╕реЗрд▓ рд╡рд╛рд▓реЗ рдХрд┐рд╕реА рднреА рдмреНрд▓реЙрдХ рдХреА рдПрдХ рд╕реНрдерд┐рддрд┐ рдХреЗ рд▓рд┐рдП рдЪрд░ рд╣реИред

рдЗрд╕ рдкреНрд░рдХрд╛рд░, рд╕рдорд╕реНрдпрд╛ рдПрдХ рд╕рдВрдпреБрдЧреНрдорд┐рдд рд░реВрдк рд╕реЗ рд╕рд╛рдорд╛рдиреНрдп рд░реВрдк рдореЗрдВ рддреИрдпрд╛рд░ рдХреА рдЬрд╛рддреА рд╣реИ рдФрд░ рдЗрд╕реЗ рд╕реИрдЯ рд╕реЙрд▓реНрд╡рд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рд╣рд▓ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдЕрдЧрд░ рдХреЛрдИ рд╕рдорд╛рдзрд╛рди рдирд╣реАрдВ рд╣реИ, рддреЛ рдПрд╕рдПрдЯреА рд╕реЙрд▓реНрд╡рд░ рдпрд╣ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░реЗрдЧрд╛ рдХрд┐ рдХреЛрдИ рд╕рдорд╛рдзрд╛рди рдирд╣реАрдВ рд╣реИред

рдЕрдм рдореЗрд░реА рдзрд╛рд░рдгрд╛ рдХреА рдкреБрд╖реНрдЯрд┐ рдпрд╛ рдЦрдВрдбрди рдХрд░рдиреЗ рдХрд╛ рд╕рдордп рдЖ рдЧрдпрд╛ рд╣реИ рдХрд┐ рдПрд╕рдПрдЯреА рд╕реЙрд▓реНрд╡рд░ рдЕрдиреНрдп рдПрд▓реНрдЧреЛрд░рд┐рджрдо рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдЬрд╛рдкрд╛рдиреА рд╡рд░реНрдЧ рдкрд╣реЗрд▓реА рдХреЛ рд╕реБрд▓рдЭрд╛рдиреЗ рдореЗрдВ рд╕рд╛рдордирд╛ рдХрд░реЗрдЧрд╛ред рдЗрд╕реЗ рд╕рддреНрдпрд╛рдкрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдореИрдВрдиреЗ рд╕рд░реНрд╡реЗ рдСрдл рдкреЗрдВрдЯ-рдмрд╛рдп-рдирдВрдмрд░ рдкрд╣реЗрд▓реА рд╕реЙрд▓реНрд╡рд░ рд╡реЗрдмрд╕рд╛рдЗрдЯ рд╕реЗ рдЙрджрд╛рд╣рд░рдг рд▓рд┐рдпрд╛ред рдЗрд╕ рд╕рд╛рдЗрдЯ рдкрд░ рдЬрд╛рдкрд╛рдиреА рд╡рд░реНрдЧ рдкрд╣реЗрд▓реА рдХреЛ рд╣рд▓ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╡рд┐рднрд┐рдиреНрди рдЕрдиреБрдкреНрд░рдпреЛрдЧреЛрдВ рдХреА рдЧрддрд┐ рдФрд░ рдЙрджрд╛рд╣рд░рдгреЛрдВ рдХреЗ рдПрдХ рдЕрдЪреНрдЫреЗ рд╕реЗрдЯ рдХреА рддреБрд▓рдирд╛ рдХрд░рдиреЗ рд╡рд╛рд▓реА рдПрдХ рддрд╛рд▓рд┐рдХрд╛ рд╣реИ - рд╕рдмрд╕реЗ рд╣рд▓реНрдХреЗ рд╕реЗ, рдЬреЛ рд╕рднреА рджреНрд╡рд╛рд░рд╛ рд╣рд▓ рдХреА рдЬрд╛рддреА рд╣реИ, рдЬрдЯрд┐рд▓ рд▓реЛрдЧреЛрдВ рдХреЗ рд▓рд┐рдП, рдЬреЛ рдХреЗрд╡рд▓ рдПрдХ рдЖрд╡реЗрджрди рд╣рд▓ рдХрд░рддрд╛ рд╣реИред рдХрдВрдкреНрдпреВрдЯрд░ рдкрд░ рдпреЗ рдкрд░рд┐рдгрд╛рдо 2.6GHz CPU AMD Phenom II X4 810 рдХреНрд╡рд╛рдб-рдХреЛрд░ 64-рдмрд┐рдЯ рдкреНрд░реЛрд╕реЗрд╕рд░ рдореЗрдореЛрд░реА: 8 Gb рдХреЗ рд╕рд╛рде рдкреНрд░рд╛рдкреНрдд рд╣реБрдП рдереЗред рдореИрдВрдиреЗ рдПрдХ Intel┬о Core (TM) рдХрдВрдкреНрдпреВрдЯрд░ i7-2600K CPU @ 3.40GHz рдореЗрдореЛрд░реА 16 Gb рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ред

рдкрд░рд┐рдгрд╛рдорд╕реНрд╡рд░реВрдк, рдореБрдЭреЗ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдкрд░рд┐рдгрд╛рдо рдорд┐рд▓реЗ:

======== sample-nin/webpbn-00001.nin ======== Start read data. 16 lines were read Solver started. vars = 150 Clauses = 562 SATISFIABLE apsnono finished. real 0m0,610s user 0m0,004s sys 0m0,002s ========= sample-nin/webpbn-00006.nin ======== Start read data. 41 lines were read Solver started. vars = 1168 Clauses = 10215 SATISFIABLE apsnono finished. real 0m0,053s user 0m0,028s sys 0m0,000s ========= sample-nin/webpbn-00016.nin ======== Start read data. 69 lines were read Solver started. vars = 7484 Clauses = 191564 SATISFIABLE apsnono finished. real 0m0,368s user 0m0,186s sys 0m0,008s ========= sample-nin/webpbn-00021.nin ======== Start read data. 40 lines were read Solver started. vars = 1240 Clauses = 11481 SATISFIABLE apsnono finished. real 0m0,095s user 0m0,034s sys 0m0,000s ========= sample-nin/webpbn-00023.nin ======== Start read data. 22 lines were read Solver started. vars = 311 Clauses = 1498 SATISFIABLE apsnono finished. real 0m0,147s user 0m0,006s sys 0m0,000s ========= sample-nin/webpbn-00027.nin ======== Start read data. 51 lines were read Solver started. vars = 2958 Clauses = 38258 SATISFIABLE apsnono finished. real 0m0,089s user 0m0,050s sys 0m0,010s ========= sample-nin/webpbn-00065.nin ======== Start read data. 75 lines were read Solver started. vars = 7452 Clauses = 134010 SATISFIABLE apsnono finished. real 0m0,272s user 0m0,166s sys 0m0,009s ========= sample-nin/webpbn-00436.nin ======== Start read data. 76 lines were read Solver started. vars = 6900 Clauses = 134480 SATISFIABLE apsnono finished. real 0m0,917s user 0m0,830s sys 0m0,005s ========= sample-nin/webpbn-00529.nin ======== Start read data. 91 lines were read Solver started. vars = 10487 Clauses = 226237 SATISFIABLE apsnono finished. real 0m0,286s user 0m0,169s sys 0m0,005s ========= sample-nin/webpbn-00803.nin ======== Start read data. 96 lines were read Solver started. vars = 9838 Clauses = 278533 SATISFIABLE apsnono finished. real 0m0,827s user 0m0,697s sys 0m0,008s ========= sample-nin/webpbn-01611.nin ======== Start read data. 116 lines were read Solver started. vars = 25004 Clauses = 921246 SATISFIABLE apsnono finished. real 0m3,467s user 0m3,301s sys 0m0,084s ========= sample-nin/webpbn-01694.nin ======== Start read data. 96 lines were read Solver started. vars = 13264 Clauses = 391427 SATISFIABLE apsnono finished. real 0m0,964s user 0m0,822s sys 0m0,016s ========= sample-nin/webpbn-02040.nin ======== Start read data. 116 lines were read Solver started. vars = 26445 Clauses = 1182535 SATISFIABLE apsnono finished. real 0m7,512s user 0m7,354s sys 0m0,122s ========= sample-nin/webpbn-02413.nin ======== Start read data. 41 lines were read Solver started. vars = 1682 Clauses = 15032 SATISFIABLE apsnono finished. real 0m0,258s user 0m0,053s sys 0m0,001s ========= sample-nin/webpbn-02556.nin ======== Start read data. 111 lines were read Solver started. vars = 11041 Clauses = 340630 SATISFIABLE apsnono finished. real 0m0,330s user 0m0,136s sys 0m0,009s ========= sample-nin/webpbn-02712.nin ======== Start read data. 95 lines were read Solver started. vars = 13212 Clauses = 364416 SATISFIABLE apsnono finished. real 0m6,503s user 0m6,365s sys 0m0,032s ========= sample-nin/webpbn-03541.nin ======== Start read data. 111 lines were read Solver started. vars = 19249 Clauses = 676595 SATISFIABLE apsnono finished. real 0m5,008s user 0m4,785s sys 0m0,100s ========= sample-nin/webpbn-04645.nin ======== Start read data. 121 lines were read Solver started. vars = 19159 Clauses = 793580 SATISFIABLE apsnono finished. real 0m4,739s user 0m4,477s sys 0m0,107s ========= sample-nin/webpbn-06574.nin ======== Start read data. 51 lines were read Solver started. vars = 2932 Clauses = 33191 SATISFIABLE apsnono finished. real 0m0,231s user 0m0,176s sys 0m0,000s ========= sample-nin/webpbn-06739.nin ======== Start read data. 81 lines were read Solver started. vars = 10900 Clauses = 256833 SATISFIABLE apsnono finished. real 0m0,782s user 0m0,730s sys 0m0,008s ========= sample-nin/webpbn-07604.nin ======== Start read data. 111 lines were read Solver started. vars = 18296 Clauses = 478535 SATISFIABLE apsnono finished. real 0m1,524s user 0m1,324s sys 0m0,026s ========= sample-nin/webpbn-08098.nin ======== Start read data. 39 lines were read Solver started. vars = 1255 Clauses = 10950 SATISFIABLE apsnono finished. real 0m0,216s user 0m0,133s sys 0m0,000s ========= sample-nin/webpbn-09892.nin ======== Start read data. 91 lines were read Solver started. vars = 13887 Clauses = 419787 SATISFIABLE apsnono finished. real 0m12,048s user 0m11,858s sys 0m0,088s ========= sample-nin/webpbn-10088.nin ======== Start read data. 116 lines were read Solver started. vars = 23483 Clauses = 1020515 SATISFIABLE apsnono finished. real 0m17,472s user 0m16,795s sys 0m0,321s ========= sample-nin/webpbn-10810.nin ======== Start read data. 121 lines were read Solver started. vars = 25726 Clauses = 895436 SATISFIABLE apsnono finished. real 0m0,898s user 0m0,562s sys 0m0,026s ========= sample-nin/webpbn-12548.nin ======== Start read data. 88 lines were read Solver started. vars = 13685 Clauses = 486012 SATISFIABLE apsnono finished. real 3m1,682s user 2m58,537s sys 0m1,507s ========= sample-nin/webpbn-18297.nin ======== Start read data. 79 lines were read Solver started. vars = 9708 Clauses = 272394 SATISFIABLE apsnono finished. real 0m16,643s user 0m16,326s sys 0m0,210s ========= sample-nin/webpbn-22336.nin ======== Start read data. 159 lines were read Solver started. vars = 67137 Clauses = 5420886 SATISFIABLE apsnono finished. real 1m46,555s user 1m43,336s sys 0m3,075s 

рдЗрд╕рд╕реЗ рдХреНрдпрд╛ рдирд┐рд╖реНрдХрд░реНрд╖ рдирд┐рдХрд╛рд▓рд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ?

  1. рд╕реИрдЯ рд╕реЙрд▓реНрд╡рд░ рдиреЗ рдЙрди рд╕рднреА рдЙрджрд╛рд╣рд░рдгреЛрдВ рдХреЛ рд╣рд▓ рдХрд┐рдпрд╛ рдЬреЛ рдЕрдиреНрдп рдЕрдиреБрдкреНрд░рдпреЛрдЧреЛрдВ рджреНрд╡рд╛рд░рд╛ рд╣рд▓ рдХрд┐рдП рдЧрдП рд╣реИрдВ, рдпрд╣рд╛рдВ рддрдХ тАЛтАЛрдХрд┐ рд╡реЗрдмрдкреАрдПрдирдмреА -22336, рдЬреЛ рдХреЗрд╡рд▓ рдПрдХ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рджреНрд╡рд╛рд░рд╛ рд╣рд▓ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред
  2. рд╕реИрдЯ рд╕реЙрд▓реНрд╡рд░ рдЖрд╕рд╛рдиреА рд╕реЗ рдХрдИ рдЙрджрд╛рд╣рд░рдгреЛрдВ рдХреЛ рд╣рд▓ рдХрд░рддрд╛ рд╣реИ рдЬрд┐рдиреНрд╣реЗрдВ рдЕрдзрд┐рдХрд╛рдВрд╢ рдЕрдиреБрдкреНрд░рдпреЛрдЧреЛрдВ рджреНрд╡рд╛рд░рд╛ рд╣рд▓ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред
  3. рдЬреНрдпрд╛рджрд╛рддрд░ рдорд╛рдорд▓реЛрдВ рдореЗрдВ, рд╕рдорд╛рдзрд╛рди рдХрд╛ рд╕рдордп рдЕрдиреНрдп рдЕрдиреБрдкреНрд░рдпреЛрдЧреЛрдВ рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдПрд╕рдПрдЯреА рд╕реЙрд▓реНрд╡рд░ рдХреЗ рд▓рд┐рдП рдмреЗрд╣рддрд░ рд╣реИред
  4. рдореИрдВрдиреЗ рдПрдХ рдПрдХрд▓-рдереНрд░реЗрдбреЗрдб рд╕реИрдЯ рд╕реЙрд▓реНрд╡рд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рд╣реИ, рдпрджрд┐ рдЖрдк рдПрдХ рдмрд╣реБ-рдереНрд░реЗрдбреЗрдб рд╕реИрдЯ рд╕реЙрд▓реНрд╡рд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рдкрд░рд┐рдгрд╛рдо рдФрд░ рднреА рдмреЗрд╣рддрд░ рд╣реЛрдВрдЧреЗред
  5. рд╕реИрдЯ рд╕реЙрд▓реНрд╡рд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╕рдордп, рдЕрдкрдиреЗ рд╕реНрд╡рдпрдВ рдХреЗ рдПрд▓реНрдЧреЛрд░рд┐рджрдо рдХрд╛ рдЖрд╡рд┐рд╖реНрдХрд╛рд░ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИ, рдЬреЛ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА, рдЙрдЪреНрдЪ рд╕рдВрднрд╛рд╡рдирд╛ рдХреЗ рд╕рд╛рде, рдХрд┐рд╕реА рдиреЗ рдЖрд╡рд┐рд╖реНрдХрд╛рд░ рдХрд┐рдпрд╛ред

рдирд┐рд╖реНрдХрд░реНрд╖ рдореЗрдВ, рд╣рдо рдпрд╣ рдЬреЛрдбрд╝ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ SAT рд╕рдорд╛рдзрд╛рди рдПрдХ рд╕реЗ рдЕрдзрд┐рдХ рд╕рдорд╛рдзрд╛рди рдкреНрд░рд╛рдкреНрдд рдХрд░ рд╕рдХрддрд╛ рд╣реИ, рдпрджрд┐ рдХреЛрдИ рд╣реЛред рдРрд╕рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдлреЙрд░реНрдо рдХрд╛ рдПрдХ рдХреНрд▓реЙрдЬ рдЬреЛрдбрд╝реЗрдВ ((рдПрдХреНрд╕ 1 рдирд╣реАрдВ) рд╡реА (рдПрдХреНрд╕ 2 рдирд╣реАрдВ) рд╡реА ... (рдПрдХреНрд╕рдПрди рдирд╣реАрдВ)), рдЬрд╣рд╛рдВ рдПрдХреНрд╕ 1, рдПрдХреНрд╕ 2 ... рдПрдХреНрд╕рдПрди рдкрд┐рдЫрд▓реЗ рд╕реЙрд▓реНрдпреВрд╢рди рдореЗрдВ рднрд░реЗ рд╣реБрдП рд╕реЗрд▓ рдХреЗ рдЕрдиреБрд░реВрдк рд╡реИрд░рд┐рдПрдмрд▓ рд╣реИрдВред

Source: https://habr.com/ru/post/hi433330/


All Articles