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

рдЦреЗрд▓ рдирд┐рдореНрд╕ рдХреЗ рдЙрджрд╛рд╣рд░рдг рдкрд░ рдПрдХ рдЬреАрддрдиреЗ рдХреА рд░рдгрдиреАрддрд┐ рдЦреЛрдЬрдиреЗ рдХреЗ рдЙрджрд╛рд╣рд░рдг рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░реЗрдВред рдХреНрдпреЛрдВ? рдХреНрдпреЛрдВрдХрд┐ рдмрд╛рдж рдореЗрдВ рдпрд╣ рд╕рд╛рдмрд┐рдд рдХрд░рдирд╛ рд╕рдВрднрд╡ рд╣реЛрдЧрд╛ рдХрд┐ рд╕рднреА "рд╕рдорд╛рди" рдЦреЗрд▓реЛрдВ рдХреА рд╢рд░реНрддреЛрдВ рдХреЛ рдЙрд╕рдХреЗ рджреНрд╡рд╛рд░рд╛ рдЦреЗрд▓ рдХреА рд╕реНрдерд┐рддрд┐рдпреЛрдВ рдХреЛ рдХрдо рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред
рддреЛ, рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдПрди рдвреЗрд░ рд╣реИрдВ, рдЬрд┐рдирдореЗрдВ рд╕реЗ рдкреНрд░рддреНрдпреЗрдХ рдореЗрдВ рд╕рдХрд╛рд░рд╛рддреНрдордХ рдорд╛рддреНрд░рд╛ рдореЗрдВ рдкрддреНрдерд░ рд╣реИрдВред рдЦрд┐рд▓рд╛рдбрд╝реА рдвреЗрд░ рд╕реЗ рдкрддреНрдерд░реЛрдВ рдХреА рдПрдХ рд╕рдХрд╛рд░рд╛рддреНрдордХ рдорд╛рддреНрд░рд╛ рд▓реЗрддреЗ рд╣реИрдВред рдЬрдм рд╕рднреА рдвреЗрд░ рдЦрд╛рд▓реА рд╣реЛ рдЬрд╛рддреЗ рд╣реИрдВ, рддреЛ рдЦреЗрд▓ рдЙрд╕ рдЦрд┐рд▓рд╛рдбрд╝реА рдХреА рд╣рд╛рд░ рдХреЗ рд╕рд╛рде рд╕рдорд╛рдкреНрдд рд╣реЛрддрд╛ рд╣реИ рдЬреЛ рдЗрд╕ рдХрджрдо рдХреЛ рдирд╣реАрдВ рдмрдирд╛ рд╕рдХрддрд╛ рд╣реИред рдЗрд╕рд▓рд┐рдП, рдПрди
рдкреЙрдЬрд┐рдЯрд┐рд╡ рдиреЗрдЪреБрд░рд▓
0 рдирдВрдмрд░реЛрдВ рдХреЗ рд╕реЗрдЯ рд╕реЗ рдЧреЗрдо рдХреА рд╕реНрдерд┐рддрд┐ рдХрд╛ рд╡рд░реНрдгрди рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ рдФрд░ рдЗрди рдирдВрдмрд░реЛрдВ рдХрд╛ рдпреЛрдЧ рд╢реВрдиреНрдп рд╣реЛ рдЬрд╛рдиреЗ рдкрд░ рдЧреЗрдо рд╕рдорд╛рдкреНрдд рд╣реЛ рдЬрд╛рддрд╛ рд╣реИред
рдкреНрд░рдореЗрдп # 1:
рд╡рд░реНрддрдорд╛рди рдЦрд┐рд▓рд╛рдбрд╝реА рдХреЗ рд▓рд┐рдП, рд░рдгрдиреАрддрд┐ рдЬреАрдд рд░рд╣реА рд╣реИ рдЕрдЧрд░ рдФрд░ рдХреЗрд╡рд▓ рдЕрдЧрд░ 1 рдвреЗрд░ рдЖрдХрд╛рд░ рдХрд╛ xor-positive рд╕рдХрд╛рд░рд╛рддреНрдордХ рд╣реИред
рдЖрдЗрдП рд╣рдо рдЗрд╕реЗ рд╕рд╛рдмрд┐рдд рдХрд░рддреЗ рд╣реИрдВред
рдорд╛рди рд▓реЗрдВ рдХрд┐ рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдореВрд▓реНрдпреЛрдВ рдХреА рджреЛ рд╕рд░рдгрд┐рдпрд╛рдБ рд╣реИрдВ ([рдкрд╣рд▓реЗ] рд╕реЗ рдкрд╣рд▓реЗ [] рдХреЗ рдмрд╛рдж], рдЬрд┐рдирдореЗрдВ рд╕реЗ рдПрдХ рдореЗрдВ ([]) рдвреЗрд░ рдХреЗ рдЖрдХрд╛рд░ рдЦрд┐рд▓рд╛рдбрд╝реА рдХреЗ рдХрджрдо рд╕реЗ рдкрд╣рд▓реЗ рдФрд░ рджреВрд╕рд░реЗ рдореЗрдВ ([] рдХреЗ рдмрд╛рдж) рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд┐рдП рдЬрд╛рддреЗ рд╣реИрдВ - рдЦрд┐рд▓рд╛рдбрд╝реА рдХреЗ рдХрджрдо рдХреЗ рдмрд╛рджред
рд╣рдо рдЦрд┐рд▓рд╛рдбрд╝реА рдХреА рдЪрд╛рд▓ рд╕реЗ рдкрд╣рд▓реЗ рдФрд░ рдмрд╛рдж рдореЗрдВ рдЪрд░-рдЦрдВрдб рдореЗрдВ xor-sums рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд░реЗрдВрдЧреЗ (рдЬрд╣рд╛рдВ "^" xor рдСрдкрд░реЗрд╢рди рд╣реИ):
bf = [0] ^ рд╕реЗ рдкрд╣рд▓реЗ [1] ^ ... ^ рд╕реЗ рдкрд╣рд▓реЗ [рдПрди - 1] ^ рд╕реЗ рдкрд╣рд▓реЗ [рдПрди]
af = рдХреЗ рдмрд╛рдж [0] ^ рдХреЗ рдмрд╛рдж [1] ^ ... ^ рдХреЗ рдмрд╛рдж [N - 1] ^ рдХреЗ рдмрд╛рдж [N]
рдлрд┐рд░, xor рдЧреБрдгреЛрдВ рдХреЗ рдХреЛрд░реЛрд▓рд░реА рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реБрдП, рд╣рдо рд▓рд┐рдЦ рд╕рдХрддреЗ рд╣реИрдВ:
af = bf ^ рд╕реЗ рдкрд╣рд▓реЗ [i] ^ рдХреЗ рдмрд╛рдж [i], рдЬрд╣рд╛рдВ "i" рд╣реАрдк рдХреА рд╕рдВрдЦреНрдпрд╛ рд╣реИ, рдЬрд╣рд╛рдВ рд╕реЗ рдЙрд╕ рдЦрд┐рд▓рд╛рдбрд╝реА рдиреЗ рдХрджрдо рдЙрдард╛рдпрд╛ рдерд╛, рдЬрд┐рд╕рдореЗрдВ рдкрддреНрдерд░ рд▓рдЧ рдЧрдПред
рдЙрдкрд░реЛрдХреНрдд рдХреЗ рдЖрдзрд╛рд░ рдкрд░, рд╣рдо рдкреНрд░рдореЗрдп рд╕рд┐рджреНрдз рдХрд░рддреЗ рд╣реИрдВ рдкреНрд░рдореЗрдп # 1 (рд╣рдо рджреЛ рдорд╛рдорд▓реЛрдВ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░рддреЗ рд╣реИрдВ: bf == 0 рдФрд░ bf! - 0:!
рдпрджрд┐ bf == 0 рд╣реИ, рддреЛ рд╡рд░реНрддрдорд╛рди рд╕реНрдерд┐рддрд┐ рдпрд╛ рддреЛ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдЦреЛ рд░рд╣реА рд╣реИ (рдпрд╛рдиреА, рдЗрд╕рдореЗрдВ рдХреЛрдИ рдкрд░рд┐рд╡рд░реНрддрди рдирд╣реАрдВ рд╣реИрдВ), рдпрд╛ рд╕рдВрдХреНрд░рдордг рд╣реИрдВ, рд▓реЗрдХрд┐рди рд╕рдорд╛рдирддрд╛ af == bf [i] ^ af [i] рдЙрдирдХреЗ рд▓рд┐рдП рд╣реИ, рд▓реЗрдХрд┐рди рдЗрд╕рд╕реЗ рдкрд╣рд▓реЗ [i]! = [i] рдХреЗ рдмрд╛рдж, рддрдм af! = 0, рдЬрд┐рд╕рдХрд╛ рдЕрд░реНрде рд╣реИ рдХрд┐ рд╕рдВрдХреНрд░рдордг рдкреНрд░реЗрд░рдг рджреНрд╡рд╛рд░рд╛ рд╡рд┐рдЬрдпреА рдЕрд╡рд╕реНрдерд╛ рдХреА рдУрд░ рд▓реЗ рдЬрд╛рддрд╛ рд╣реИред
рдпрджрд┐ bf! = 0 рд╣реИ, рддреЛ рдЖрдкрдХреЛ рдпрд╣ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ рдХрд┐ рдХрд┐рд╕ рдХрджрдо рдХреЗ рдкрд░рд┐рдгрд╛рдорд╕реНрд╡рд░реВрдк рдПрдХ рдЦреЛрдИ рд╣реБрдИ рд╕реНрдерд┐рддрд┐ рд╣реЛрдЧреА (рдпрд╛рдиреА af == 0):
рд╕рдВрдЦреНрдпрд╛ bf рдХреЗ рдмрд┐рдЯ рд░рд┐рдХреЙрд░реНрдб рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░реЗрдВред рд╕рдмрд╕реЗ рдорд╣рддреНрд╡рдкреВрд░реНрдг рдиреЛрдирдЬрд░реЛ рдмрд┐рдЯ рд▓реЗрдВ, рдХреНрдпреВ рджреНрд╡рд╛рд░рд╛ рдЗрд╕рдХреА рд╕рдВрдЦреНрдпрд╛ рдХреЛ рджрд░реНрд╢рд╛рддреЗ рд╣реБрдПред рдЖрдЬреНрдЮрд╛ рджреЗрдирд╛ рдПрдХ рд╕рдВрдЦреНрдпрд╛ рд╕реЗ рдкрд╣рд▓реЗ рд╕рдВрдЦреНрдпрд╛ [] рдЬрд┐рд╕рдХрд╛ qth рдмрд┐рдЯ рдиреЙрдирдЬрд░реЛ рд╣реИ (рджреВрд╕рд░реЗ рд╢рдмреНрджреЛрдВ рдореЗрдВ, рд╡рд╛рдВрдЫрд┐рдд рдвреЗрд░ рдХреА рд╕рдВрдЦреНрдпрд╛)ред
рдорд╛рди рд▓реАрдЬрд┐рдП рдХрд┐ [k] рдХреЗ рдмрд╛рдж [k] ^ bf рд╕реЗ рдкрд╣рд▓реЗ (рдпрд╣ рдорд╛рдирд╛ рдЬрд╛рддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рд╡рд╛рдВрдЫрд┐рдд рдЪрд╛рд▓ рд╣реИ)ред рд╡рд╣ рд╕рд╣реА рдХреНрдпреЛрдВ рд╣реИ? рдХреНрдпреЛрдВрдХрд┐ [k] рдХреЗ рдмрд╛рдж [k] рд╕реЗ рдкрд╣рд▓реЗред рдпрд╣ рдЗрд╕ рддрдереНрдп рд╕реЗ рдирд┐рдореНрдирд╛рдиреБрд╕рд╛рд░ рд╣реИ рдХрд┐ [k] рдФрд░ [k] рд╕реЗ рдкрд╣рд▓реЗ qth рд╕реЗ рдкреБрд░рд╛рдиреЗ рд╕рднреА рдмрд┐рдЯ рд╕рдорд╛рди рд╣реИрдВ, рдФрд░ qth рдмрд┐рдЯ рдореЗрдВ, [k] рд╕реЗ рдкрд╣рд▓реЗ рдПрдХ рд╣реИ, рдФрд░ [k] рдХреЗ рдмрд╛рдж рд╢реВрдиреНрдп рд╣реИред
рдлрд┐рд░ рд╣рдо рдЧрдгрдирд╛ рдХрд░рддреЗ рд╣реИрдВ:
af = bf ^ рд╕реЗ рдкрд╣рд▓реЗ [k] ^ рдХреЗ рдмрд╛рдж [k] = bf ^ рд╕реЗ рдкрд╣рд▓реЗ [k] ^ (bf ^ рд╕реЗ рдкрд╣рд▓реЗ [k] = 0
рдЪреВрдВрдХрд┐ рдЗрд╕ рдХрджрдо рдХреЗ рджреМрд░рд╛рди рдПрдХреНрд╕рд░-рд░рд╛рд╢рд┐ рд╢реВрдиреНрдп рдХреЗ рдмрд░рд╛рдмрд░ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдкреНрд░рдореЗрдп рд╕рд╛рдмрд┐рдд рд╣реЛрддрд╛ рд╣реИред
рдкреНрд░рдореЗрдп # 1 рд╕реЗ рдХреНрдпрд╛ рд╣реЛрддрд╛ рд╣реИ? рдпрд╣ рдЕрдиреБрд╕рд░рдг рдХрд░рддрд╛ рд╣реИ рдХрд┐ рдХрд┐рд╕реА рднреА рд░рд╛рдЬреНрдп рдХреА рддрд░рд╣ рдПрдХ рдиреАрдо-рдЬреИрд╕рд╛ ("рдмрд░рд╛рдмрд░") рдЦреЗрд▓ рдХреЛ рдПрдХ рд╕рдордХрдХреНрд╖ рд╕реЗ рдмрджрд▓рд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдПрдХ рдвреЗрд░ рд╕реЗ рдорд┐рд▓рдХрд░, рдЬрд┐рд╕рдХрд╛ рдЖрдХрд╛рд░ рдкреБрд░рд╛рдиреЗ рд░рд╛рдЬреНрдп рдореЗрдВ рдвреЗрд░ рдХреЗ рдЖрдХрд╛рд░ рдХреЗ XOR- рдпреЛрдЧ рдХреЗ рдмрд░рд╛рдмрд░ рд╣реИред
рд╕реНрдкреНрд░рд╛рдЧ-рджрд╛рджреА рд╕рдорд╛рд░реЛрд╣
рдХрд┐рд╕реА рднреА "рдмрд░рд╛рдмрд░" рдЦреЗрд▓ рдХреА рд╕реНрдерд┐рддрд┐ рдХреЛ рдвреЗрд░ рдХреЗ рд░реВрдк рдореЗрдВ рджрд░реНрд╢рд╛рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдпрджрд┐ рдвреЗрд░ рдХрд╛ рдЖрдХрд╛рд░ рд╢реВрдиреНрдп рд╣реИ, рддреЛ рд░рд╛рдЬреНрдп рдЦреЛ рд░рд╣рд╛ рд╣реИред рдЕрдЧрд░ рдмрд░рд╛рдмрд░ рдирд╣реАрдВ - рдЬреАрддред
рдорд╛рди рд▓реАрдЬрд┐рдП рдХрд┐ рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдПрдХ рдирд┐рд╢реНрдЪрд┐рдд рдЕрд╡рд╕реНрдерд╛ G [] рдЖрдХрд╛рд░ рдХреЗ рдПрдХ рдирд┐рд╢реНрдЪрд┐рдд рдвреЗрд░ X рдХреЗ рдмрд░рд╛рдмрд░ рд╣реИред рдпрд╣ рд╕рдВрдЦреНрдпрд╛ рдкреНрд░реЗрд░рдг рджреНрд╡рд╛рд░рд╛ рдкрд╛рдИ рдЬрд╛ рд╕рдХрддреА рд╣реИред рдЕрдЧрд░ рд╣рдо рдЬрд╛рдирддреЗ рд╣реИрдВ рдХрд┐ рд░рд╛рдЬреНрдп G [i] m [i] рд╕реЗ рдореЗрд▓ рдЦрд╛рддрд╛ рд╣реИ, рддреЛ m [] рдЗрд╕ рдкреНрд░рдХрд╛рд░ рд╣реЛрдЧрд╛:
m = рдореЗрдХреНрд╕рд┐рдХреЛ {m [1], ..., m [k]}
реи ред
рдареАрдХ рдпрд╣реА рд╕реНрдкреИрдЧ-рдЧреНрд░реИрдбреА рдХрд╛ рдХрд╛рд░реНрдп рд╣реИ: рдпрджрд┐ рд╣рдореЗрдВ "рд╕рдорд╛рди" рдЧреЗрдо рдХреЗ рд╡рд┐рдЬреЗрддрд╛ рдХреЛ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рддреЛ рд╣рдо рдЗрд╕реЗ рдХрдо рдХрд░рддреЗ рд╣реИрдВ-рд╣реАрдкреНрд╕, рдкреНрд░рддреНрдпреЗрдХ рдвреЗрд░ рдХреЗ рд▓рд┐рдП рдЬреА () рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░реЗрдВ рдФрд░ рдЙрдирдХреА рдПрдХреНрд╕-рд░рд╛рд╢рд┐ рдЦреЛрдЬреЗрдВред
рджреВрд╕рд░реЗ рд╢рдмреНрджреЛрдВ рдореЗрдВ, рдЬреА (рдХреЗ, рдПрди, рдПрдо) = рдЬреА (рдХреЗ) ^ рдЬреА (рдПрди) ^ рдЬреА (рдПрдо)ред
рдХрд╛рд░реНрдп
рдЕрдм рд╣рдо рдУрд▓рдВрдкрд┐рдпрд╛рдб рд╕рдорд╕реНрдпрд╛ рдХреЗ рдЙрджрд╛рд╣рд░рдг рд╕реЗ рд╕реНрдкреНрд░рд╛рдЧ-рдЧреНрд░реИрдВрдб рдлрдВрдХреНрд╢рди рдХрд╛ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдХрд░реЗрдВрдЧреЗ рдЬреЛ рдореБрдЭреЗ рд╕рдорд░ рдХрдВрдкреНрдпреВрдЯрд░ рд╕реНрдХреВрд▓ рдХреЗ рдХреНрд╡рд╛рд▓реАрдлрд╛рдЗрдВрдЧ рджреМрд░ рдореЗрдВ рдорд┐рд▓рд╛ рдерд╛ред рд╕рдорд╕реНрдпрд╛ рдХреА рд╕реНрдерд┐рддрд┐ рдЗрд╕ рдкреНрд░рдХрд╛рд░ рдереА:
рдПрдХ рдирд┐рд╢реНрдЪрд┐рдд рджреНрд╡реАрдк рдкрд░, рдЖрдЧ рднрдбрд╝рдХ рд░рд╣реА рд╣реИред рд░реЛрдмреЛрдЯ рдПрдХ рдХреЛ рдЫреЛрдбрд╝рдХрд░ рд╕рднреА рд╢рд╣рд░реЛрдВ рдХреЛ рдмрд╛рд╣рд░ рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рдерд╛ред
рдЖрдЧ рдмрд╣реБрдд рддреЗрдЬреА рд╕реЗ рдлреИрд▓рддреА рд╣реИ, рдЗрд╕рд▓рд┐рдП рд╣рд░ рджрд┐рди рдЖрдЧ рд╕рднреА рд╢рд╣рд░реЛрдВ рдХреЛ рдирд╖реНрдЯ рдХрд░ рджреЗрддреА рд╣реИ,
рдкрд╣рд▓реЗ рд╕реЗ рдЬрд▓ рд░рд╣реЗ рд╢рд╣рд░реЛрдВ рдХреЗ рд╕рд╛рде рд╕рдбрд╝рдХ рдорд╛рд░реНрдЧ рд╕реЗ рдЬреБрдбрд╝рд╛ рд╣реБрдЖ рд╣реИред рд░реЛрдмреЛрдЯ рдЕрдм рдмреБрдЭ рдирд╣реАрдВ рд╕рдХрддрд╛
рдЙрд╕рдХреЗ рд▓рд┐рдП рдХреЗрд╡рд▓ рдПрдХ рдЪреАрдЬ рдмрдЪреА рд╣реИ рд╡рд╣ рд╣реИ рдЖрдЧ рд╕реЗ рдмрдЪрдирд╛ред рд░реЛрдмреЛрдЯ рдХреА рдЧрддрд┐ рдХреЗ рд╕рд╛рде рдореЗрд▓ рдЦрд╛рддрд╛ рд╣реИ
рдЖрдЧ рдХреА рдЧрддрд┐, рдЗрд╕рд▓рд┐рдП рдПрдХ рджрд┐рди рдореЗрдВ рд░реЛрдмреЛрдЯ рдкрдбрд╝реЛрд╕реА рд╢рд╣рд░ рдореЗрдВ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред
рд░реЛрдмреЛрдЯ рдХреЛ рджреЛ рдкрд╛рдпрд▓рдЯ рдирд┐рдХреЛрд▓реЗ рдФрд░ рд╡реНрд▓рд╛рджрд┐рдореАрд░ рджреНрд╡рд╛рд░рд╛ рдирд┐рдпрдВрддреНрд░рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЬреЛ рдЪрд╛рд▓реВ рд╣реИрдВ
рдкреГрдереНрд╡реА рдХрд╛ рдкреНрд░рд╛рдХреГрддрд┐рдХ рдЙрдкрдЧреНрд░рд╣ред рдЗрд╕ рддрдереНрдп рдХреЗ рдмрд╛рд╡рдЬреВрдж рдХрд┐ рдЕрдм рд░реЛрдмреЛрдЯ рдХреЛ рдмрдЪрд╛рдпрд╛ рдирд╣реАрдВ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ рдФрд░ рдЗрд╕рдХреЗ рдлрд╛рдпрджреЗ
рдирд╣реАрдВ, рдкрд╛рдпрд▓рдЯ рдмрд╣реБрдд рд░реБрдЪрд┐ рд░рдЦрддреЗ рд╣реИрдВ рдХрд┐ рд╡рд╣ рдЙрдирдХреА рд╢рд┐рдлреНрдЯ рдореЗрдВ рдирд╖реНрдЯ рдирд╣реАрдВ рд╣реБрдЖ рдерд╛ред рдХреЗ рд▓рд┐рдП
рд░реЛрдмреЛрдЯ рдХрд╛ рдиреБрдХрд╕рд╛рди рдордЬрджреВрд░реА рд╕реЗ рдПрдХ рд╕рднреНрдп рдХрдЯреМрддреА рдкрд░ рдирд┐рд░реНрднрд░ рдХрд░рддрд╛ рд╣реИред
рдкрд╣рд▓реЗ рджрд┐рди, рд░реЛрдмреЛрдЯ рд░рд╛рдЬрдзрд╛рдиреА (рд╢рд╣рд░ рдирдВрдмрд░ 1) рдореЗрдВ рд╣реИред рдирд┐рдХреЛрд▓реЗ рд░реЛрдмреЛрдЯ рдХреЛ рдирд┐рдпрдВрддреНрд░рд┐рдд рдХрд░рддрд╛ рд╣реИ
рдкрд╣рд▓реЗ рджрд┐рди рдФрд░ 1. рдПрдХ рдкрд╛рдпрд▓рдЯ рд╢рд╣рд░ рд╕реЗ рдЙрд╕реЗ рднреЗрдЬ рд╕рдХрддрд╛ рд╣реИ
рд╡реИрдХрд▓реНрдкрд┐рдХред рдЗрд╕ рдкреНрд░рдХрд╛рд░, рд╣рд░ рджрд┐рди рдХреЗрд╡рд▓ рдПрдХ рдЪреАрдЬ рдЬреЛ рдПрдХ рд░реЛрдмреЛрдЯ рдХрд░ рд╕рдХрддрд╛ рд╣реИ
рдЕрдкрдиреА рд╡рд░реНрддрдорд╛рди рд╕реНрдерд┐рддрд┐ рд╕реЗ рд╕рдЯреЗ рдХрд┐рд╕реА рднреА рд╢рд╣рд░ рдореЗрдВ рдЬрд╛рдирд╛ред
рдкрд╣рд▓реЗ рджрд┐рди рдХреЗрд╡рд▓ рд░рд╛рдЬрдзрд╛рдиреА рдЬрд▓рддреА рд╣реИред рд╣рд░ рдЕрдЧрд▓реЗ рджрд┐рди рдЕрддрд┐рд░рд┐рдХреНрдд
рд╕рднреА рд╢рд╣рд░ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдЬрд▓рддреЗ рд╣реБрдП рд╕рдбрд╝рдХреЛрдВ рд╕реЗ рдЬреБрдбрд╝реЗ рд╣реБрдП рд╣реИрдВред
рдпрджрд┐ рдкрд╛рдпрд▓рдЯ рд░реЛрдмреЛрдЯ рдХреЛ рдЬрд▓рддреЗ рд╢рд╣рд░ рдореЗрдВ рдЫреЛрдбрд╝ рджреЗрддрд╛ рд╣реИ рдпрд╛ рдЙрд╕реЗ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдЬрд▓рд╛рдиреЗ рдХрд╛ рдирд┐рд░реНрджреЗрд╢ рджреЗрддрд╛ рд╣реИ
рд╢рд╣рд░, рд░реЛрдмреЛрдЯ рдЖрдЧ рдХреЛ рдЦрдбрд╝рд╛ рдирд╣реАрдВ рдХрд░ рд╕рдХрддрд╛ рд╣реИ рдФрд░ рдирд╖реНрдЯ рд╣реЛ рдЧрдпрд╛ рд╣реИред
рдпрд╣ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рдирд╛ рдЖрд╡рд╢реНрдпрдХ рд╣реИ рдХрд┐ рдХреМрди рдПрдХ рдЗрд╖реНрдЯрддрдо рдЧреЗрдо рдХреЗ рд╕рд╛рде, рд░реЛрдмреЛрдЯ рдХреЗ рд▓рд┐рдП рдЬреБрд░реНрдорд╛рдирд╛ рджреЗрдЧрд╛ред рдЬрд╛рд╣рд┐рд░ рд╣реИ, рдпрд╣ рдЦреЗрд▓ рдЗрд╕рдХреЗ рд╕рдорд╛рди рд╣реИ: рдпрд╣ рдкрд░рд┐рдорд┐рдд рд╣реИ, рдЗрд╕рдореЗрдВ рдПрдХ рдбреНрд░реЙ рдЕрд╕рдВрднрд╡ рд╣реИ рдФрд░ рджреЛрдиреЛрдВ рдЦрд┐рд▓рд╛рдбрд╝реА рдкреНрд░рддрд┐рджреНрд╡рдВрджреНрд╡реА рдХреА рдкреНрд░рдЧрддрд┐ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЬрд╛рдирдХрд╛рд░реА рджреЗрдЦрддреЗ рд╣реИрдВред
рдпрд╣ рдХрд┐рд╕ рдЪреАрдЬ рдХреЛ рдЙрдмрд╛рд▓рддрд╛ рд╣реИ? рдпрд╣ рд╕рд╣реА рд╣реИ, рдирдВрдмрд░ 1 рд╡рд╛рд▓реЗ рд╢рд╣рд░ рд╕реЗ рдЬреА-рдлрд╝рдВрдХреНрд╢рди рдХреА рдкрд░рд┐рднрд╛рд╖рд╛ рдХреЗ рд▓рд┐рдПред

рдХреЛрдб рдЙрджрд╛рд╣рд░рдг рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░реЗрдВред рд╣рдо рдорд╛рдирддреЗ рд╣реИрдВ рдХрд┐ рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдХрд┐рдирд╛рд░реЛрдВ рдХреЗ рд╕рд╛рде рдПрдХ рдЖрд╕рдиреНрди рдореИрдЯреНрд░рд┐рдХреНрд╕ рд╣реИ (рдЕрдЧрд░ рд╢рд╣рд░ рдмреА рдХреЛ рд╢рд╣рд░ рд╕реЗ рдкрд╣рд▓реЗ рдЬрд▓рд╛ рджреЗрддрд╛ рд╣реИ рддреЛ рд╣рдо рдХрд┐рдирд╛рд░реЗ a -> b рдХреЛ рд╣рдЯрд╛ рджреЗрдВрдЧреЗ)ред
рдлрд┐рд░ рдЗрд╕ рдХрд╛рд░реНрдп рдХреЗ рд▓рд┐рдП рд╕реНрдкреНрд░рд╛рдЧ-рджрд╛рджреА рд╕рдорд╛рд░реЛрд╣ рдХреА рдЧрдгрдирд╛ рдирд┐рдореНрдирд╛рдиреБрд╕рд╛рд░ рдХреА рдЬрд╛рдПрдЧреА:
def Grundy(): for i in range(N): if matrix[v][i] == 1: if Grundy(i) == 0: return 1 exit return 0
рдпрджрд┐ рдлрд╝рдВрдХреНрд╢рди "1" рджреЗрддрд╛ рд╣реИ, рддреЛ рдПрдХ рдЗрд╖реНрдЯрддрдо рдЧреЗрдо рдХреЗ рд╕рд╛рде, рд╡реНрд▓рд╛рджрд┐рдореАрд░ рдЬреАрддрддрд╛ рд╣реИред
рдЕрдм рдЙрд╕рдХреЗ рд╕рд╛рде рдЦреЗрд▓ рдХреА рддрд░рд╣ рд╕реНрдерд┐рддрд┐ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░реЗрдВ, рд▓реЗрдХрд┐рди рдХрдИ рд╕реНрдерд┐рддрд┐рдпреЛрдВ рдХреЗ рд╕рд╛рдеред рд╡рд╣рд╛рдВ рдореБрдЯреНрдареА рднрд░ рдкрддреНрдерд░ рд░рдЦреЗрдВ, рдЬрд┐рдирдХреА рд╕рдВрдЦреНрдпрд╛ рд╡рд┐рд╖рдо рд╣реИред рдПрдХ рдмрд╛рд░ рдореЗрдВ, рдЖрдк рдвреЗрд░ рд╕реЗ рдЪрд╛рд░ рд╕реЗ рдЕрдзрд┐рдХ рдкрддреНрдерд░ рдирд╣реАрдВ рд▓реЗ рд╕рдХрддреЗред рдЦреЗрд▓ рддрдм рддрдХ рдЬрд╛рд░реА рд░рд╣рддрд╛ рд╣реИ рдЬрдм рддрдХ рдХрд┐ рдкрддреНрдерд░ рдЦрддреНрдо рдирд╣реАрдВ рд╣реЛ рдЬрд╛рддреЗред рдЬреЛ рдкрддреНрдерд░ рдХреА рдПрдХ рд╕рдорд╛рди рд╕рдВрдЦреНрдпрд╛ рд▓реЗрддрд╛ рдерд╛ рд╡рд╣ рдЬреАрдд рдирд╣реАрдВ рдкрд╛рддрд╛ рд╣реИред
рдкрд╣рд▓реА рдирдЬрд╝рд░ рдореЗрдВ, рдЗрд╕ рдЦреЗрд▓ рдХрд╛ рдЕрдм рд╕реНрдкреНрд░рд╛рдЧ-рдЧреНрд░реИрдВрдб рдлрдВрдХреНрд╢рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛ рд░рд╣рд╛ рд╣реИред рдХреНрдпреЛрдВ? рдХреНрдпреЛрдВрдХрд┐ рдЦреЗрд▓ рдХреА рд╕реНрдерд┐рддрд┐ рди рдХреЗрд╡рд▓ рдореБрдЯреНрдареА рднрд░ рдкрддреНрдерд░реЛрдВ рдХреА рд╕рдВрдЦреНрдпрд╛ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рддреА рд╣реИ - рдЦрд┐рд▓рд╛рдбрд╝рд┐рдпреЛрдВ рдХреЗ рдкрддреНрдерд░ рднреА рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣реИрдВред рд▓реЗрдХрд┐рди рдпрд╣ рд╡рд┐рдЪрд╛рд░ рдХрд░рдирд╛ рдЖрд╕рд╛рди рд╣реИ рдХрд┐ рдХреНрдпрд╛ рдЖрдк рдЦреЗрд▓ рдХреА рд╕реНрдерд┐рддрд┐ рд▓реЗрддреЗ рд╣реИрдВ
рд╕рдВрдЦреНрдпрд╛рдУрдВ рдХреЗ G () n, m рдФрд░ p, рдЬрд╣рд╛рдВ n рдвреЗрд░ рдореЗрдВ рдкрддреНрдерд░реЛрдВ рдХреА рд╕рдВрдЦреНрдпрд╛ рд╣реИ, рдФрд░ m рдФрд░ p рдЦрд┐рд▓рд╛рдбрд╝рд┐рдпреЛрдВ рдХреЗ рд▓рд┐рдП рдкрддреНрдерд░реЛрдВ рдХреА рд╕рдорддрд╛ рд╣реИ (0 рдПрдХ рд╡рд┐рд╖рдо рд╕рдВрдЦреНрдпрд╛ рд╣реИ, 1 рдПрдХ рд╕рдо рд╕рдВрдЦреНрдпрд╛ рд╣реИ)ред
рдЦреЗрд▓ рд╕рдорд╛рдкреНрдд рд╣реЛрдиреЗ рдкрд░ рджреЛ рд╕рдВрднрд╛рд╡рд┐рдд рд╕реНрдерд┐рддрд┐рдпрд╛рдВ рд╣реЛрддреА рд╣реИрдВ, рдЬрд┐рд╕рдореЗрдВ n == 0:
рдЬреА (0, 0, 1) рдФрд░ рдЬреА (0, 1, 0)ред
рд╕рд╛рдзрд╛рд░рдг рдирд┐рдо рдЦреЗрд▓реЛрдВ рдХреЗ рд▓рд┐рдП рдкрд╣рд▓реА рд╕реНрдерд┐рддрд┐ рдереЛрдбрд╝реА рдЕрдЪреВрдХ рд╣реИ - рдЦрд┐рд▓рд╛рдбрд╝реА рдПрдХ рдЪрд╛рд▓ рдирд╣реАрдВ рдмрдирд╛ рд╕рдХрддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдЪреВрдВрдХрд┐ рдЙрд╕рдХреЗ рдкрддреНрдерд░реЛрдВ рдХреА рд╕рдВрдЦреНрдпрд╛ рд╕рдорд╛рди рд╣реИ, рдЗрд╕рд▓рд┐рдП рд╡рд╣ рд╣рд╛рд░ рдирд╣реАрдВ рдЧрдпрд╛ред рдЗрд╕реЗ рдЧреНрд░рд╛рдлрд╝ рдкрд░ рдЪрд┐рддреНрд░рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдПрдХ рд╕рдВрдХреНрд░рдордг рдЬреЛрдбрд╝реЗрдВ:
(0, 0, 1) -> (0, 1, 0)
рдпрджрд┐ рд╣рдо рдЕрдм рдЧреНрд░рд╛рдл рдХреЛ рджрд░реНрд╢рд╛рддреЗ рд╣реИрдВ, рддреЛ рд╣рдо рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдЖрд╡реГрддреНрддрд┐ рдХреЛ рдиреЛрдЯ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ:
рдЬреА (рдПрди, рдПрдо, рдкреА) = рдЬреА (рдП, рдПрдо, рдкреА),
рдЬрд╣рд╛рдБ a = n mod 6
рдпрд╣ рд╣рдореЗрдВ рдХреНрдпрд╛ рджреЗрддрд╛ рд╣реИ? рдвреЗрд░ рдореЗрдВ рдкрддреНрдерд░реЛрдВ рдХреЛ 27 рд╣реЛрдиреЗ рджреЗрдВред рдлрд┐рд░ рдЬреА (27, 0, 0) = рдЬреА (3, 0, 0) = 3. рд╢реБрд░реБрдЖрддреА рдЬреАрддрддрд╛ рд╣реИ, рдФрд░ рдЬреАрддрдиреЗ рдХреА рд╕реНрдерд┐рддрд┐ рдмрдирд╛рдиреЗ рд╡рд╛рд▓реА рдЪрд╛рд▓ рдХрд╛ рдЕрдиреБрд╡рд╛рдж рдХрд░рдирд╛ рд╣реЛрдЧрд╛ (3, 0, 0) -> ( рез, реж, реж)ред рдЗрд╕рд▓рд┐рдП, рдЬреАрдд рдХреЗ рд▓рд┐рдП, рд╢реБрд░реБрдЖрддрдХрд░реНрддрд╛ рдХреЛ рджреЛ рдкрддреНрдерд░ рд▓реЗрдиреЗ рдХреА рдЬрд░реВрд░рдд рд╣реИред
рд╕рдВрдХреНрд╖реЗрдк рдореЗрдВ рдХрд╣рдирд╛
рд╕реНрдкреНрд░рд╛рдЧ-рджрд╛рджреА рд╕рдорд╛рд░реЛрд╣ рд╕рдорд╛рди ("рдмрд░рд╛рдмрд░") рдЦреЗрд▓реЛрдВ рдХрд╛ рдПрдХ рдЕрднрд┐рдиреНрди рдЕрдВрдЧ рд╣реИ рдФрд░ рдПрдХ рдкреВрд░реЗ рдХреЗ рд░реВрдк рдореЗрдВ рдЦреЗрд▓реЛрдВ рдХрд╛ рд╕рд┐рджреНрдзрд╛рдВрдд рд╣реИред рдЦреЗрд▓ рдХреА рдкреНрд░рддреНрдпреЗрдХ рдЕрд╡рд╕реНрдерд╛ рд╕реЗ рдлрд╝рдВрдХреНрд╢рди G () рдХреЛ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рдиреЗ рдФрд░ рдЙрдирдХреА рдПрдХреНрд╕рд░-рд░рд╛рд╢рд┐ (рдЗрд╕реЗ "рдЧреЗрдо рдХрд╛ рдпреЛрдЧ" рднреА рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИ) рдХреА рдорджрдж рд╕реЗ рд╕рдорд╕реНрдпрд╛рдУрдВ рдХреЛ рд╣рд▓ рдХрд░рдиреЗ рдореЗрдВ рдХрдореА рдЖрддреА рд╣реИред
рдЦреЗрд▓реЛрдВ рдХреЗ рд▓рд┐рдП рдЬрд┐рд╕рдореЗрдВ рд░рд╛рдЬреНрдпреЛрдВ рдХреА рд╕рдВрдЦреНрдпрд╛ рдЗрддрдиреА рдмрдбрд╝реА рд╣реИ рдХрд┐ рдпрд╣ рд╕рдВрд╕рд╛рдзрди-рдЧрд╣рди рд╣реИ, рдХреБрдЫ рдирд┐рд╢реНрдЪрд┐рдд рдкреИрдЯрд░реНрди рдЦреЛрдЬрдиреЗ рдХреЗ рд▓рд┐рдП рд╕рдВрднрд╡ рд╣реИред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдЕрдХреНрд╕рд░ рд╕реНрдкреНрд░рд╛рдЧ-рдЧреНрд░реИрдВрдб рдлрдВрдХреНрд╢рди рдЖрд╡рдзрд┐рдХ рд╣реЛрддрд╛ рд╣реИред
рдиреЛрдЯ
0 рдЗрд╕ рдореБрджреНрджреЗ рдХреЗ
рд╡рд┐рд╡рд╛рдж рдХреЗ рдмрд╛рд╡рдЬреВрдж, рд╢реВрдиреНрдп рдХреЛ рднреА рдПрдХ рдкреНрд░рд╛рдХреГрддрд┐рдХ рд╕рдВрдЦреНрдпрд╛ рдорд╛рдирд╛ рдЬрд╛рдПрдЧрд╛ред
рд╕рдВрдЦреНрдпрд╛рдУрдВ рдХрд╛
1 xor-a [N] рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐ рд╣реИ [1] ^ [a] [2] ^ ... ^ [a [N]ред
рд╕рдВрдЦреНрдпрд╛рдУрдВ рдХреЗ рдПрдХ рд╕реЗрдЯ рдХреЗ
2 рдореЗрдХреНрд╕рд┐рдХреЛ рдЗрд╕ рд╕реЗрдЯ (рдЕрдВрдЧреНрд░реЗрдЬреА рдиреНрдпреВрдирддрдо рдЕрдкрд╡рд░реНрддрдХ рд╕реЗ) рдореЗрдВ рдирд╣реАрдВ рдорд┐рд▓рд╛ рд╕рдмрд╕реЗ рдЫреЛрдЯрд╛ рдЧреИрд░-рдирдХрд╛рд░рд╛рддреНрдордХ рдирдВрдмрд░ рд╣реИред
рд╕рд╛рд╣рд┐рддреНрдп
рдЗрд╕ рд╡рд┐рд╖рдп рдХреЗ рдЕрдзрд┐рдХ рд╡рд┐рд╕реНрддреГрдд рдЕрдзреНрдпрдпрди рдХреЗ рд▓рд┐рдП, рдореИрдВ рдкреБрд╕реНрддрдХреЛрдВ рдХреА рд╕рд┐рдлрд╛рд░рд┐рд╢ рдХрд░рддрд╛ рд╣реВрдВ:
рдИред рдмрд░реНрд▓реЗрдХреИрдВрдк, рдЬреЗрдПрдЪ рдХреЙрдирд╡реЗ, рдЖрд░ред рдЧрд╛рдпред рдЕрдкрдиреЗ рдЧрдгрд┐рддреАрдп рдирд╛рдЯрдХреЛрдВ рдХреЗ рд▓рд┐рдП рддрд░реАрдХреЗ рдЬреАрддрдирд╛
рдЬреЗрдПрдЪ рдХреЙрдирд╡реЗред рдирдВрдмрд░реЛрдВ рдФрд░ рдЦреЗрд▓реЛрдВ рдкрд░ред
рдФрд░ рдПрдХ
рджрд┐рд▓рдЪрд╕реНрдк рд╡реНрдпрд╛рдЦреНрдпрд╛рди рдкрд╛рдареНрдпрдХреНрд░рдо ред
рджреБрд░реНрднрд╛рдЧреНрдп рд╕реЗ, рдпрд╣ рд╕рдм рдЕрдВрдЧреНрд░реЗрдЬреА рдореЗрдВ рд╣реИред
рд╕реНрд╡-рдЕрдзреНрдпрдпрди рдХреЗ рд▓рд┐рдП рдХрд╛рд░реНрдп
рдпрджрд┐ рдЖрдк рдЗрд╕ рд╡рд┐рд╖рдп рдкрд░ рд╕рдорд╕реНрдпрд╛рдУрдВ рдХреЛ рд╣рд▓ рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рддреЛ рдореИрдВ
рдЗрд╕ рдПрдХ рдФрд░
рдЕрдиреНрдп рд╕рдорд╛рди рдХрд╛рд░реНрдпреЛрдВ рдХреА рд╕рд▓рд╛рд╣ рджреЗрддрд╛ рд╣реВрдВред
рд╕реМрднрд╛рдЧреНрдп!
UPD : "рд╕реНрдкреЛрд░реНрдЯреНрд╕ рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ" рдореЗрдВ рдЪрд▓реЗ рдЧрдПред