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


рд╕реНрдХреНрд╡рд╛рдпрд░ рдХреЛрд╖реНрдардХ рдкреВрд░реЗ рднрд╛рдЧ рдкрд░ рдХрдмреНрдЬрд╛ рдХрд░рдиреЗ рдХрд╛ рд╕рдВрдХреЗрдд рджреЗрддреЗ рд╣реИрдВред рдирд╣реАрдВ, рдкрд╣рд▓рд╛ рд╕реВрддреНрд░ рдлрд╛рдЗрдмреЛрдиреИрдЪрд┐ рд╕рдВрдЦреНрдпрд╛ рдирд╣реАрдВ рд╣реИ, рд╣рд╛рд▓рд╛рдВрдХрд┐ рдЧреБрдгрд╛рдВрдХ рд╕рдорд╛рди рд╣реИ, рд▓реЗрдХрд┐рди рдпрд╣рд╛рдВ рдЕрдВрдХрдЧрдгрд┐рддреАрдп рдкреНрд░рдЧрддрд┐ рд╣реИ, рдФрд░ рдЬреНрдпрд╛рдорд┐рддреАрдп рдирд╣реАрдВ рд╣реИред рдмрд╕ рдзреНрдпрд╛рди рджреЗрдВ рдХрд┐ рдЬреЛрдбрд╝реА рдХреА рд╕рдВрдЦреНрдпрд╛ рдХреЗ рдмреАрдЪ рдХрд╛ рдЕрдВрддрд░ n рд╣реИред
рдкрд╣рд▓реЗ рдПрдХ рд╣рдм
рдкрд░ 64 рд▓рд╛рдЗрдиреЛрдВ рдореЗрдВ рдЯреАрд╕реАрдПрд▓ рдкрд░ рд░рд┐рд╡рд░реНрд╕реА рдФрд░
10 рд▓рд╛рдЗрдиреЛрдВ рдореЗрдВ
рдЯреАрд╕реАрдПрд▓ рдкрд░ рдкрдВрджреНрд░рд╣ рдереЗ рдЬрд┐рд╕рдореЗрдВ рдПрдХ рдХреЙрдореНрдкреИрдХреНрдЯ рдФрд░ рд╕реБрдВрджрд░ рдХреЛрдб рдерд╛, рдпрд╣рд╛рдВ рдЖрдкрдХреЛ рдРрд╕рд╛ рдирд╣реАрдВ рджрд┐рдЦреЗрдЧрд╛ред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рд╡рд╣ рд╢рд╛рдпрдж рдЕрдЪреНрдЫреЗ рд╢рд┐рд╖реНрдЯрд╛рдЪрд╛рд░ рд╕реЗ рджреВрд░ рд╣реИред рд╕рд╛рдорд╛рдиреНрдп рддреМрд░ рдкрд░, рдЕрдЧрд░ рдХреБрдЫ рдЖрдкрдХреЛ рдЧреЛрд╡рдиреЛрдХреЙрдб рдЬреИрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ, рддреЛ рд╕рдмрд╕реЗ рдЕрдзрд┐рдХ рд╕рдВрднрд╛рд╡рдирд╛ рд╣реИред рджреВрд╕рд░реА рдУрд░, рдпрд╣ рдФрд░ рднреА рдЕрдЪреНрдЫрд╛ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рднрд╡рд┐рд╖реНрдп рдореЗрдВ рдЗрд╕рдореЗрдВ рдХреБрдЫ рд╕реБрдзрд╛рд░ рд╣реЛрдЧрд╛ред рдЖрдВрд╢рд┐рдХ рд░реВрдк рд╕реЗ рдЗрд╕ рддрдереНрдп рдХреЗ рдХрд╛рд░рдг рдХрд┐ рднрд╛рд╖рд╛ рдореЗрд░реЗ рд▓рд┐рдП рдирдИ рд╣реИ, рдЖрдВрд╢рд┐рдХ рд░реВрдк рд╕реЗ рд╕реНрдкрд╖реНрдЯреАрдХрд░рдг рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдЗрд╕реЗ рдФрд░ рдЕрдзрд┐рдХ рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдПред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛ рдЧрд╛рдпрдм рд╣реИрдВ рд╡реИрдХрд▓реНрдкрд┐рдХ рдЬрд╛рдВрдЪред
рдЖрдЧреЗ рдХрд╛рд░реНрдпрдХреНрд░рдо рдХреЗ рдЯреБрдХрдбрд╝реЗ рд╣реЛрдВрдЧреЗред рдпрд╣ рдЗрд╖реНрдЯрддрдо рд╕реЗ рдмрд╣реБрдд рджреВрд░ рд╣реИ, рд▓реЗрдХрд┐рди рдпрд╣ рднрд╛рд╖рд╛ рдХреА рд╡рд┐рд╢реЗрд╖рддрд╛рдУрдВ рдФрд░ рдХрд╛рд░реНрдпреЛрдВ рдХреЛ рджрд░реНрд╢рд╛рддрд╛ рд╣реИред
рдХрд╛рд░реНрдпрдХреНрд░рдо рдХреА рд╢реБрд░реБрдЖрдд рд╣реИ:
рдЬреЛрдбрд╝реЗ рдЦреЛрдиреЗ рдХреЗ рд▓рд┐рдП рдХреЛрдб:
set n_max 20 ;
рдЖрдк рд╕реВрдЪреА рдХреЛ рдЗрд╕ рддрд░рд╣ рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ:
puts lPair1;
рдпрд╣рд╛рдБ рдЙрддреНрдкрд╛рджрди рд╣реИ:
{реж реж} {рез реи} {рей рел} {рек 6} {рем резреж} {} резрей} {реп резрел} {резрез рез}} {резреи реиреж} {резрек реирей} {резрем реирем} {рез} реи {} {рез реп 31} {21 34} {22 36} {24 39} {25 41} {27 44} {29 47} {30 49} {32 52}}
рдЗрд╕рд▓рд┐рдП, рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдЙрди рдЬреЛрдбрд╝рд┐рдпреЛрдВ рдХреА рдПрдХ рд╕реВрдЪреА рд╣реИ, рдЬрд┐рдирдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рд╕реА рд╡реНрдпрдХреНрддрд┐ рдХреЗ рдкрд╛рдареНрдпрдХреНрд░рдо рдкрд░ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рджреЗрдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП; рдЖрдкрдХреЛ рдпрд╣ рд╕реАрдЦрдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ рдХрд┐ рдПрдХ рд╡рд┐рд╢рд┐рд╖реНрдЯ рдЬреЛрдбрд╝реА рдХреИрд╕реЗ рдЪреБрдиреЗрдВред рдирдП рд░рд╛рдЬреНрдп рдореЗрдВ рдЬрд╛рдиреЗ рдХреЗ рд▓рд┐рдП 3 рд╡рд┐рдХрд▓реНрдк рд╣реИрдВ:
- рдПрдХ рдвреЗрд░ рдХрд╛ рдкрд░рд┐рд╡рд░реНрддрди: 9 5 -> 4 5;
- рдПрдХ рдФрд░ рдвреЗрд░ рдмрджрд▓рдирд╛: 9 5 -> 9 2;
- рджреЛрдиреЛрдВ рдХреЛ рдПрдХ рд╕рд╛рде рдмрджрд▓реЗрдВ: реп рел -> рем реи
рдЪреВрдВрдХрд┐ рд╣рдореЗрдВ рдХреЗрд╡рд▓ рдкрддреНрдерд░реЛрдВ рдХреЛ рд▓реЗрдирд╛ рдЪрд╛рд╣рд┐рдП, рдкреНрд░рддреНрдпреЗрдХ рдХрджрдо рдХреЗ рд╕рд╛рде рдкрддреНрдерд░реЛрдВ рдХрд╛ рдпреЛрдЧ рдШрдЯрддрд╛ рд╣реИред
рдХрдВрдкреНрдпреВрдЯрд░ рдЪрд╛рд▓рди рдХрдорд╛рдВрдб рдкрд░ рдЪрд▓рддреЗ рд╣реИрдВ:
LAns рдФрд░ lPair рдХреНрдпрд╛ рд╣реИрдВ, рдЗрд╕рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдереЛрдбрд╝рд╛ рд╡рд┐рд╡рд░рдгред рдПрдХ рдЬреАрдд рд╡рд╛рдкрд╕реА рдХрджрдо рдКрдкрд░ рддреАрди рд╡рд┐рдХрд▓реНрдкреЛрдВ рдореЗрдВ рд╕реЗ рдПрдХ рд╕реЗ рдореЗрд▓ рдЦрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдкрд╣рд▓реЗ рджреЛ рдореЗрдВ рд╣реА рдХреНрдпрд╛ рд╕реЗ рдЕрд▓рдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЕрд▓рдЧ рд╣реИред рдкрд╣рд▓реЗ рд╡рд┐рдХрд▓реНрдк рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░реЗрдВ, рд╣рдо рдкрд╣рд▓реЗ рдвреЗрд░ рд╕реЗ рд▓реЗрддреЗ рд╣реИрдВ, рдЬрд┐рд╕рдХрд╛ рдЕрд░реНрде рд╣реИ рдХрд┐ рджреВрд╕рд░рд╛ рдвреЗрд░ рдирд╣реАрдВ рдмрджрд▓рддрд╛ рд╣реИ, рдФрд░ рдЗрд╕рдореЗрдВ рдкрддреНрдерд░реЛрдВ рдХреА рд╕рдВрдЦреНрдпрд╛ рд╕реЗ рдЖрдк рдкрд╣рд▓реЗ рдХреЗ рд╡рд╛рдВрдЫрд┐рдд рдЖрдХрд╛рд░ рдХреЛ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдЕрд░реНрдерд╛рддреНред рд╣рдо рдХрд┐рддрдирд╛ рдирд╣реАрдВ рд▓реЗрддреЗ, рд▓реЗрдХрд┐рди рдХрд┐рддрдирд╛ рдЫреЛрдбрд╝рддреЗ рд╣реИрдВред LAns рдХреА рд╕рд╛рдордЧреНрд░реА рд╣реИ:
0 2 1 5 7 3 10 4 13 15 6 18 20 8 23 9 26 28 11 31 31 12 34 36 14 39 41 ...
рд╕реВрдЪреА рдореЗрдВ рд╕реВрдЪрдХрд╛рдВрдХ рдвреЗрд░ рдореЗрдВ рдкрддреНрдерд░реЛрдВ рдХреА рд╕рдВрдЦреНрдпрд╛ рд╣реИ, рдЬреЛ рдирд╣реАрдВ рдмрджрд▓рддрд╛ рд╣реИ, рдЗрд╕ рд╕реВрдЪрдХрд╛рдВрдХ рдХреЗ рд▓рд┐рдП рдореВрд▓реНрдп рд╣реАрдк рдореЗрдВ рдкрддреНрдерд░реЛрдВ рдХреА рдирдИ рд╕рдВрдЦреНрдпрд╛ рд╣реИ, рдЬрд┐рд╕рдореЗрдВ рд╕реЗ рд╣рдо рдкрддреНрдерд░ рд▓реЗрдВрдЧреЗред
LPair рдХреА рд╕рд╛рдордЧреНрд░реА рдЙрдкрд░реЛрдХреНрдд lPair1 рдХреА рд╕рд╛рдордЧреНрд░реА рд╕реЗ рдЕрд▓рдЧ рдирд╣реАрдВ рд╣реИред рдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ рд╕реВрдЪрдХрд╛рдВрдХ рдореВрд▓реНрдп рд╕реВрдЪрдХрд╛рдВрдХ рдХреЗ рдмрд░рд╛рдмрд░ рдЕрдВрддрд░ рдХреЗ рд╕рд╛рде рдкрддреНрдерд░реЛрдВ рдХреА рдорд╛рддреНрд░рд╛ рдХреА рдПрдХ рдирдИ рдЬреЛрдбрд╝реА рдХрд╛ рдкреНрд░рддрд┐рдирд┐рдзрд┐рддреНрд╡ рдХрд░рддрд╛ рд╣реИред
рдФрд░ рдпрд╣рд╛рдВ рд╣рдо рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЗ рд╕рд╛рде рдмрд╛рддрдЪреАрдд рдХреЛ рд╡реНрдпрд╡рд╕реНрдерд┐рдд рдХрд░рддреЗ рд╣реИрдВ:
puts {Enter heap sizes:}
рдкреВрд░рд╛ рдХреЛрдб
рдкрд╛рд╕реНрдЯрдмрд┐рди рдкрд░ рджреЗрдЦрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред
рднрд╛рд╖рд╛ рдХрд╛ рд╡рд╛рдХреНрдп-рд╡рд┐рдиреНрдпрд╛рд╕
рд╕рдВрджрд░реНрдн рд╕реЗ рд╣реИ ред
рд╕реВрдЪрд┐рдпреЛрдВ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдирд╛ рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣реИ, рдЗрд╕реА рдЖрджреЗрд╢
рджрд╕реНрддрд╛рд╡реЗрдЬрд╝ рдореЗрдВ рд╣реИрдВ ред
PS рдЕрдЧрд▓реЗ рднрд╛рдЧ рдореЗрдВ, рдпрджрд┐ рдпрд╣ рд╣реИ, рддреЛ рдЯрд┐рдкреНрдкрдгрд┐рдпреЛрдВ рдореЗрдВ рд░рдЪрдирд╛рддреНрдордХ рдЯрд┐рдкреНрдкрдгрд┐рдпреЛрдВ рдХреЛ рдзреНрдпрд╛рди рдореЗрдВ рд░рдЦрд╛ рдЬрд╛рдПрдЧрд╛ред