рд╣реИрдмрд░реНрд╕ рдХреНрд╡реАрди рдХреЗ рдорд╣реАрдиреЗ рдкрд░, рдЗрд╕рд▓рд┐рдП рдореИрдВ рдЕрдкрдиреЗ рд╡рд┐рдХрд╛рд╕ рдХреЛ рд╕рд╛рдЭрд╛ рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВ, рдЬреЛ рдореИрдВрдиреЗ рдЪрд╛рд░ рд╕рд╛рд▓ рдкрд╣рд▓реЗ рдХрд┐рдпрд╛ рдерд╛ред
рдПрдХ рдЕрдЪреНрдЫреА рдмрд╣реБрд╕реНрддрд░реАрдп рдЗрдВрдЬреАрдирд┐рдпрд░рд┐рдВрдЧ рдХрд╛ рдХрд╛рдо рд╣реИ, рд▓реЗрдХрд┐рди ...
рдЬрдм "рдЯреЗрд▓реАрдЧреНрд░рд╛рдл рд▓рд╛рдЗрди рдкрд░ рд╣рд╕реНрддрдХреНрд╖реЗрдк" рдХреЗ рдЕрдЧрд▓реЗ рдмреИрдЪ рдХреЛ рджреЗрдЦрддреЗ рд╣реИрдВ, рддреЛ рд╕рд╛рдзрд╛рд░рдг рдкреНрд░реЛрдЧреНрд░рд╛рдорд░ рдХреЗрд╡рд▓ рдЖрд╢реНрдЪрд░реНрдпрдЪрдХрд┐рдд рд╣реЛрддрд╛ рд╣реИ: "рдпрд╣ рдХреИрд╕реЗ рд╕рдВрднрд╡ рд╣реИ", рдФрд░ "рдХреМрди рдерд╛ рд╡рд╣ рдЙрджрд╛рд╕ рдЯреЙрдЯреЛрдирд┐рдХ рдЬреАрдирд┐рдпрд╕"ред
рдореИрдВ рдХрд╡рд░реЛрдВ рдХреЛ рддреЛрдбрд╝рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВ рдФрд░ рджрд┐рдЦрд╛рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВ рдХрд┐ рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рднрд╛рд╖рд╛рдУрдВ рдХреЗ рдХрд┐рд╕реА рднреА рднрд╛рдЧ рдореЗрдВ рдХрд┐рд╕реА рднреА рдЬрдЯрд┐рд▓рддрд╛ рдХреА рдПрдХ рдмрд╣реБрд╕реНрддрд░реАрдп рд▓рд┐рдЦрдирд╛ рдХрд┐рддрдирд╛ рдЖрд╕рд╛рди рд╣реИ, рдЬрд┐рд╕рдореЗрдВ рд╕рдлреЗрдж рд╕реНрдерд╛рди рдФрд░ рдмреНрд░реЗрдирдлреИрдХ рд╢рд╛рдорд┐рд▓ рд╣реИрдВред
рдЪреВрдВрдХрд┐ рд╣рдо рдХрд╛рд░реНрдпрдХреНрд░рдо рдЧреНрд░рдВрдереЛрдВ рдФрд░ рдЙрдирдХреЗ рдирд┐рд╖реНрдкрд╛рджрди рдХреЗ рдкрд░рд┐рдгрд╛рдореЛрдВ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░ рд░рд╣реЗ рд╣реИрдВ, рдЗрд╕рд▓рд┐рдП рдЗрд╕ рдорд╛рдорд▓реЗ рдХреЛ рд▓рд╛рдЗрдиреЛрдВ рдХреЗ рдХрд╛рд░реНрдпреЛрдВ рдХреЗ рд░реВрдк рдореЗрдВ рджреЗрдЦрдирд╛ рд╕реНрд╡рд╛рднрд╛рд╡рд┐рдХ рд╣реЛрдЧрд╛ред
рдХрд╛рд░реНрдпреЛрдВ
рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдХреНрдпрд╛ рд╡рд┐рд╢реЗрд╖рддрд╛рдПрдВ рд╣реИрдВ?
рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ, рдпрд╣ рдПрдХ
рджреБрднрд╛рд╖рд┐рдпрд╛ рд╣реИ : рдпрд╣ рдХрд╛рд░реНрдпрдХреНрд░рдо рдХрд╛ рдкрд╛рда рд▓реЗрддрд╛ рд╣реИ, рдорд╛рдирдХ рдЖрдЙрдЯрдкреБрдЯ рд╕реЗ рдкрд╛рда рдХреЛ рд╕рдВрдХрд▓рд┐рдд рдХрд░рддрд╛ рд╣реИ, рдЪрд▓рд╛рддрд╛ рд╣реИ, рдФрд░ рд╡рд╛рдкрд╕ рдХрд░рддрд╛ рд╣реИред
рд╣рдо рдЗрд╕ рдлрд╝рдВрдХреНрд╢рди рдХреЛ рдмрд╕ рдХрд╣рддреЗ рд╣реИрдВ:
RUN ред
рдЪреВрдВрдХрд┐ рд╣рдо рдПрдХ рднрд╛рд╖рд╛ рддрдХ рд╕реАрдорд┐рдд рдирд╣реАрдВ рд╣реЛрдВрдЧреЗ, рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдПрдХ рдкреВрд░рд╛ рдкрд░рд┐рд╡рд╛рд░ рд╣реИ: Runpython, RUNc, RUNbrainfuck ...
рдпрд╣ рд╕реНрдкрд╖реНрдЯ рд╣реИ рдХрд┐ рдЗрди рдХрд╛рд░реНрдпреЛрдВ рдХреЛ рдЕрд▓рдЧ-рдЕрд▓рдЧ рддрд░реАрдХреЛрдВ рд╕реЗ рд▓рд╛рдЧреВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдХреИрд╕реЗ - рдпрд╣ рд╣рдореЗрдВ рдЪрд┐рдВрддрд╛ рдирд╣реАрдВ рдХрд░рдиреА рдЪрд╛рд╣рд┐рдПред рдЖрдЦрд┐рд░рдХрд╛рд░, рд╣рдо рднрд╛рд╖рд╛ рдХреЗ рдЕрдкрдиреЗ рд╡реНрдпрд╛рдЦреНрдпрд╛рдХрд╛рд░ рдХреЛ рдирд╣реАрдВ рд▓рд┐рдЦрддреЗ рд╣реИрдВ, рдФрд░ рдЗрд╕рд╕реЗ рднреА рдЕрдзрд┐рдХ, рдЙрд╕реА рднрд╛рд╖рд╛ рдореЗрдВред
рд╕рд╛рдорд╛рдиреНрдп рддреМрд░ рдкрд░, рдореБрдЦреНрдп рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдЕрдм рд╣рдорд╛рд░реЗ рд╕рд┐рд░ рдореЗрдВ рд╣реЛрдЧрд╛, рдХреНрдпреЛрдВрдХрд┐ рд╣рдо рд╕реНрдЯреНрд░рд┐рдВрдЧ рд╕рдореАрдХрд░рдгреЛрдВ рдХреЛ рд╣рд▓ рдХрд░реЗрдВрдЧреЗред
рджреВрд╕рд░реЗ, рдХрд╛рд░реНрдпреЛрдВ рдХрд╛ рдПрдХ рдорд╣рддреНрд╡рдкреВрд░реНрдг рдкрд░рд┐рд╡рд╛рд░
рдбреЗрдХреЛрд░реЗрдЯрд░ рдФрд░
рд▓реЗрдЦрдХ рд╣реИрдВ ред рдбреЗрдХреЛрд░реЗрдЯрд░ рдПрдХ рдордирдорд╛рдирд╛ рд╕реНрдЯреНрд░рд┐рдВрдЧ рд▓реЗрддрд╛ рд╣реИ рдФрд░ рдЗрд╕рдореЗрдВ рд╡рд┐рд╢реЗрд╖ рдкрд╛рддреНрд░реЛрдВ рдХреЛ рдмрджрд▓рддрд╛ рд╣реИ, рдФрд░ рдлрд┐рд░ рд▓реЗрдЦрдХ рд╕реНрдЯреНрд░рд┐рдВрдЧ рдХреЛ рдЙрджреНрдзрд░рдг рдЪрд┐рд╣реНрдиреЛрдВ рд╕реЗ рдШреЗрд░рддрд╛ рд╣реИред
L x = qopen + D x + qclose
рдбреЗрдХреЛрд░реЗрдЯрд░реНрд╕ рдХреА рдПрдХ рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╕рдВрдкрддреНрддрд┐ рд╕реНрдЯреНрд░рд┐рдВрдЧреНрд╕ рдХреЗ рдЬреЛрдбрд╝ (рд╕рдВрдпреЛрдЬрди) рдХреЗ рд╕рдВрдЪрд╛рд▓рди рдХреЗ рд▓рд┐рдП рд╕рдВрд╡реЗрджрдирд╢реАрд▓рддрд╛ рд╣реИ: рдИ (рдПрдХреНрд╕ + рд╡рд╛рдИ) = рдПрдХреНрд╕ + рдЖрдИред
рд╡реИрд╕реЗ, рд╣рдо рддреБрд░рдВрдд рд╕рд╣рдордд рд╣реЛрдВрдЧреЗ: рд░рд┐рдХреЙрд░реНрдб рдХреА рд╕рдВрд░рдЪрдирд╛ рдХреЗ рд▓рд┐рдП, рдлрд╝рдВрдХреНрд╢рди рдмрдбрд╝реЗ рдЕрдХреНрд╖рд░реЛрдВ рдореЗрдВ рд╣реЛрдВрдЧреЗ, рдЫреЛрдЯреЗ рдЕрдХреНрд╖рд░реЛрдВ рдореЗрдВ рддрд╛рд░, рдПрдлрдПрдХреНрд╕ - рдлрд╝рдВрдХреНрд╢рди рдХреЛ рдПрдл рд╕реЗ рдПрдХреНрд╕ рдкрд░ рд▓рд╛рдЧреВ рдХрд░рдирд╛, рдПрдлрдЬреАрдПрдХреНрд╕ - рдПрдл рдХреЛ рдЬреАрдПрдХреНрд╕ рдкрд░ рд▓рд╛рдЧреВ рдХрд░рдирд╛, рдпрд╛, рдПрдХ рд╣реА рд╣реИ, рд░рдЪрдирд╛ рдПрдлрдЬреА рд╕реЗ рдПрдХреНрд╕ рдкрд░ рд▓рд╛рдЧреВ рдХрд░рдирд╛ред
Quine
рдпрджрд┐ рдЖрдк C рдореЗрдВ рд╕рдмрд╕реЗ рдЫреЛрдЯреА рд░рд╛рдиреА рдХреЛ рджреЗрдЦрддреЗ рд╣реИрдВ,
char*f="char*f=%c%s%c;main(){printf(f,34,f,34,10);}%c";main(){printf(f,34,f,34,10);}
рддрдм рд╣рдо рдПрдХ рд╡рд┐рд╢реЗрд╖рддрд╛ рдкреИрдЯрд░реНрди рджреЗрдЦреЗрдВрдЧреЗред рдпрд╣рд╛рдВ, рдХрд╛рд░реНрдпрдХреНрд░рдо рдХреЗ рджреЛ рдЯреБрдХрдбрд╝реЗ рджреЛ рдмрд╛рд░ рджреЛрд╣рд░рд╛рдП рдЬрд╛рддреЗ рд╣реИрдВ - рдПрдХ рдмрд╛рд░ рд╢реАрд░реНрд╖-рд╕реНрддрд░реАрдп рдкрд╛рда рдХреЗ рд░реВрдк рдореЗрдВ, рджреВрд╕рд░реА рдмрд╛рд░ рд╕реНрдЯреНрд░рд┐рдВрдЧ рд╢рд╛рдмреНрджрд┐рдХ рдХреЗ рд░реВрдк рдореЗрдВред
рдФрд░ рдЗрд╕реЗ рдиреАрдЪреЗ рд▓рд┐рдЦреЗрдВ:
quine = a + b + Ea + c + Ee + d + e
рдареАрдХ рдЙрд╕реА рддрд░рд╣, рдЬреИрд╕реЗ рд╣рдо рдЕрдЬрдЧрд░ рдореЗрдВ рдХреНрд╡реАрди рдмрдирд╛ рд╕рдХрддреЗ рд╣реИрдВ:
s1,s2 = 's1,s2 = ', "\nprint s1+repr(s1)+', '+repr(s2)+s2" print s1+repr(s1)+', '+repr(s2)+s2
рдпрд╛, рдереЛрдбрд╝рд╛ рдФрд░ рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рдФрд░ рдХреНрд░рд┐рдпрд╛:
рд╕рдмрд╕реНрдЯреНрд░рд┐рдВрдЧ рдП рдФрд░ рдИ рдЬрд╛рдирдХрд╛рд░реАрдкреВрд░реНрдг рд╣реИрдВ, рдмрдбрд╝реЗ рдЧреНрд░рдВрде рдЬреЛ рдкреНрд░реЛрдЧреНрд░рд╛рдореЗрдЯрд┐рдХ рд░реВрдк рд╕реЗ рдЙрддреНрдкрдиреНрди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЕрд╡рд╛рд╕реНрддрд╡рд┐рдХ рд╣реИрдВ; рд╕рдмрд╕реНрдЯреНрд░рд┐рдВрдЧ рдмреА, рд╕реА, рдбреА - рдЧреЛрдВрдж, рдЖрдорддреМрд░ рдкрд░ рдЙрджреНрдзрд░рдг рдЪрд┐рд╣реНрдиреЛрдВ, рдЧрд╛рдбрд╝реА рд╕реНрдерд╛рдирд╛рдВрддрд░рдг, рдЖрджрд┐ рд╕реЗ рдорд┐рд▓рдХрд░ред
рд╕реНрдкрд╖реНрдЯрддрд╛ рдХреА рдмрд╛рдд рдХрд░рдирд╛ред рдХрд╛рд░реНрдпрдХреНрд░рдо рдХреЗ рдкрд╛рда рдХреЛ рдЖрд╕рд╛рдиреА рд╕реЗ рдПрдХ рдЕрдЦрдВрдб рд░реЗрдЦрд╛ рдХреЗ рд░реВрдк рдореЗрдВ рдирд╣реАрдВ, рдмрд▓реНрдХрд┐ рд░реЗрдЦрд╛рдУрдВ рдХреА рд╕реВрдЪреА рдХреЗ рд░реВрдк рдореЗрдВ рдорд╛рдирд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдПрдХ рдЕрдиреНрдп рд▓реЗрдЦ рдореЗрдВ, рдореИрдВ рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рдЗрд╕ рдкрд░ рд▓реМрдЯреВрдВрдЧрд╛, рдФрд░ рд╕реВрдЪрд┐рдпреЛрдВ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рддрд░реАрдХреЗ рдХреЗ рдПрдХ рдЬреЛрдбрд╝реЗ рдХреЛ рджрд┐рдЦрд╛рдКрдВрдЧрд╛ред
рдЗрд╕ рдмреАрдЪ, рд╡рд╛рдкрд╕ рд░рд╛рдиреА рдХреЗ рдкрд╛рд╕ред
RUN рдлрд╝рдВрдХреНрд╢рди рдХреЛ рдХреНрд╡реАрди рдХреЗ рд▓рд┐рдП рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ:
RUN quine = quine
ред
рдпрд╛рдиреА, рдХреНрд╡реАрди RUN рдлрд╝рдВрдХреНрд╢рди рдХрд╛ рдПрдХ рдирд┐рд╢реНрдЪрд┐рдд рдмрд┐рдВрджреБ рд╣реИред
рдЖрдЗрдП рд╕рдВрдХреНрд╖реЗрдк рдореЗрдВ рдХреНрд╡реАрди рдХреЛ рд╕рдВрдХреНрд╖рд┐рдкреНрдд рдХрд░рддреЗ рд╣реИрдВред рдХреНрдпрд╛ рд╣реЛрдЧрд╛ рдЕрдЧрд░ рд╣рдо рдордирдорд╛рдиреЗ рддрд░реАрдХреЗ рд╕реЗ рдордирдорд╛рдиреЗ рддрд╛рд░ рдХреЛ рдЖрдЙрдЯрдкреБрдЯ рдХрд░рдирд╛ рд╕реАрдЦреЗрдВ?
Q(F,f,g,h,i,j) = a + b + Ef + c + Ej + d + e
рдПрдХ рд╣реА рдЕрдЬрдЧрд░ рдкрд░:
рдХреНрд╡рд╛рди рдкреНрд░рддрд┐рд╕реНрдерд╛рдкрди рдкрджрд╛рд░реНрде рдХрд╛ рд╣рд▓ рд╣реИ:
RUN Q(F,f,g,h,i,j) = Q(F,f,g,h,i,j)
RUN Q(F,f,g,h,i,j) = f + b + Ff + c + Fj + d + e Q(F,f,g,h,i,j) = a + b + Ff + c + Ej + d + e
Whence F = E, рдЕрд░реНрдерд╛рдд рд╕рдЬрд╛рд╡рдЯ рдХреА рд╕реЙрдлреНрдЯрд╡реЗрдпрд░ рд╡рд┐рдзрд┐ рднрд╛рд╖рд╛ рдХреЗ рдирд┐рдпрдореЛрдВ рдХреЗ рдЕрдиреБрд╕рд╛рд░ рд╕рдЬрд╛рд╡рдЯ рдХреЗ рд╕рд╛рде рдореЗрд▓ рдЦрд╛рддреА рд╣реИ; рдкрд╛рда рдХреЗ рдЯреБрдХрдбрд╝реЗ - рдпрд╣ рд╕реНрдкрд╖реНрдЯ рд╣реИ рдХрд┐ рдХреНрдпрд╛ рд╕рд╛рде рдореЗрд▓ рдЦрд╛рддрд╛ рд╣реИред
рдПрдХ рдФрд░ рд╡рд┐рд╖рдпрд╛рдВрддрд░: рдпрд╣рд╛рдВ рддрдХ тАЛтАЛрдХрд┐ рдПрдХ рд╣реА рднрд╛рд╖рд╛ рдХреЗ рднреАрддрд░, рд╕рдЬреНрдЬрд╛рдХрд╛рд░ рдмрд╣реБрдд, рдмрд╣реБрдд рдЕрд▓рдЧ рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВред рд╣рдо рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рд╕рдВрдЦреНрдпрд╛рдУрдВ рдХреЗ рдПрдХ рд╕рдореВрд╣ рдХреЗ рд░реВрдк рдореЗрдВ рддрд╛рд░реЛрдВ рдХрд╛ рдкреНрд░рддрд┐рдирд┐рдзрд┐рддреНрд╡ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред
рдлрд┐рд░ "рд▓рд╛рдЗрди" рдХрд╛ рдЖрдЙрдЯрдкреБрдЯ 104, 97, 98, 114 рдкреНрд░рд┐рдВрдЯ '' .join (рдореИрдк (chr), xs) рд╣реИ, рдФрд░ рд╕рдЬрд╛рдП рдЧрдП рдлреЙрд░реНрдо рдореЗрдВ рдЖрдЙрдЯрдкреБрдЯ рдкреНрд░рд┐рдВрдЯ рд╣реИ ',' рдЬреЙрдЗрди (рдореИрдк (str), xs)ред
рдХреГрдкрдпрд╛ рдзреНрдпрд╛рди рджреЗрдВ: RUN рдФрд░ Q рдлрд╝рдВрдХреНрд╢рдВрд╕ рд╕реНрдЯреНрд░рд┐рдВрдЧреНрд╕ рдХреЗ рдКрдкрд░ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд┐рдП рдЧрдП рд╣реИрдВ (Q рдЖрдорддреМрд░ рдкрд░ рд╕реНрдЯреНрд░рд┐рдВрдЧреНрд╕ рдФрд░ рдПрдХ рдлрдВрдХреНрд╢рди рдкрд░ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдПрдХ рдЙрдЪреНрдЪ-рдХреНрд░рдо рдлрд╝рдВрдХреНрд╢рди рд╣реИ), рд▓реЗрдХрд┐рди рдЙрдирдХрд╛ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рд▓рдХреНрд╖реНрдп рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рднрд╛рд╖рд╛ рдХреЗ рдмрд╛рд╣рд░ рд╣реЛрддрд╛ рд╣реИ рдЬрд┐рд╕рдореЗрдВ рд╣рдо рдХреНрд╡реАрди рд▓рд┐рдЦрддреЗ рд╣реИрдВред рдЬрдмрдХрд┐ рдлрд╝рдВрдХреНрд╢рди E рдХреЛ рд▓рдХреНрд╖реНрдп рднрд╛рд╖рд╛ рдореЗрдВ рдкрд╛рда рдХреЗ рд░реВрдк рдореЗрдВ рд▓рд╛рдЧреВ рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП!
рдкреНрд░рд┐рдВрдЯрд░
рдЕрдм рдЪрд▓реЛ рдПрдХ рдФрд░, рдмрд╣реБрдд рд╣реА рд╕рд░рд▓ рдХрд╛рд░реНрдпрдХреНрд░рдо рджреЗрдЦреЗрдВред рдпрд╣ рдХрд╛рд░реНрдпрдХреНрд░рдо рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдкрд╛рда рдХреЛ рдкреНрд░рд┐рдВрдЯ рдХрд░рддрд╛ рд╣реИред
printer = p + Sq + r RUN printer = q
рдЬрд╣рд╛рдВ рдПрд╕ рд╕рдЬрд╛рдпрд╛ рдкрд╛рда рднрдВрдбрд╛рд░рдг рдХрд╛ рдХреБрдЫ рддрд░реАрдХрд╛ рд╣реИред
рдЪреВрдВрдХрд┐ рд╣рдо рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдордирдорд╛рдиреЗ рдкрд╛рда рдХреЗ рд▓рд┐рдП рдПрдХ
рдкреНрд░рд┐рдВрдЯрд░ рд▓рд┐рдЦ рд╕рдХрддреЗ рд╣реИрдВ, рд╣рдо рдПрдХ рдлрдВрдХреНрд╢рди рдХрд░реЗрдВрдЧреЗ:
P(q) = p + Sq + r
рдмреЗрд╢рдХ, рдЕрдкрд░рд┐рд╡рд░реНрддрдиреАрдп:
RUN P(q) = q
рдпрд╣реА рд╣реИ, рдкреНрд░рд┐рдВрдЯрд░ рджреБрднрд╛рд╖рд┐рдпрд╛ рдХреЗ рд╡рд┐рдкрд░реАрдд рдПрдХ рдлрд╝рдВрдХреНрд╢рди рд╣реИ!
рд╕реА рдореЗрдВ:
#include <stdio.h> int main() { printf("%s", "hello\nhabr"); return 0; }
рдЕрдЬрдЧрд░ рдкрд░:
print """ hello RSDN """
рдпрд╣реА рд╣реИ, рдпрд╣рд╛рдБ рдлрд╝рдВрдХреНрд╢рди S рдЕрдЪреНрдЫреЗ рдкреБрд░рд╛рдиреЗ рдИ рдХреЗ рд╕рд╛рде рдореЗрд▓ рдЦрд╛рддрд╛ рд╣реИ (рдЕрдЬрдЧрд░ рдкрд░, рдпрд╣ рдФрд░ рднреА рд╕рд░рд▓ рд╣реИ, рдЖрдкрдХреЛ рд▓рд╛рдЗрди рдлреАрдб рд╕реЗ рдмрдЪрдирд╛ рдирд╣реАрдВ рд╣реЛрдЧрд╛)ред
рдФрд░ рдпрд╣рд╛рдБ - рдореЗрд▓ рдирд╣реАрдВ рдЦрд╛рддрд╛:
#include <stdio.h> int main() { putchar(114);putchar(115);putchar(100);putchar(110); return 0; }
рдкреНрд░рд┐рдВрдЯрд░ P, рдХреНрд╡реАрди рдХреНрдпреВ рдХреЗ рд╕рд╛рде рдЕрдиреБрдХреВрд▓рддрд╛ рд╕реЗ рддреБрд▓рдирд╛ рдХрд░рддрд╛ рд╣реИ рдХрд┐ рдЗрд╕рдХреЗ рддрддреНрд╡, p рдФрд░ r, рдлрд╝рдВрдХреНрд╢рди рдХреЗ рдорд╛рдкрджрдВрдбреЛрдВ рд╕реЗ рд╕реНрд╡рддрдВрддреНрд░ рд╣реИрдВред
рдореЗрдЯрд╛- рдкреНрд░рд┐рдВрдЯрд░ рдХреЛ рдкреНрд░рд┐рдВрдЯрд░ рд╕реЗ рдмрдирд╛рдирд╛ рдЖрд╕рд╛рди рд╣реИ: рдПрдХ рдкреНрд░реЛрдЧреНрд░рд╛рдо рдЬреЛ рдПрдХ рдкреНрд░реЛрдЧреНрд░рд╛рдо рдкреНрд░рд┐рдВрдЯ рдХрд░рддрд╛ рд╣реИ рдЬреЛ рдЯреЗрдХреНрд╕реНрдЯ рдкреНрд░рд┐рдВрдЯ рдХрд░рддрд╛ рд╣реИред
Pmeta (q) = PPq = P(p + Sq + r) = p + S(p + Sq + r) + r = p + Sp + SSq + Sr + r pmeta = p + Sp Smeta = SS rmeta = Sr + r RUN (RUN( Pmeta(q) )) = q
рдХреЛрдИ рд╣рдореЗрдВ рдмрд╣реБрднрд╛рд╖реА рдкреНрд░рд┐рдВрдЯрд░ рдмрдирд╛рдиреЗ рд╕реЗ рдирд╣реАрдВ рд░реЛрдХ рд░рд╣рд╛ рд╣реИ:
Pbilingua(q) = P'P"q = P'(p" + S"q + r") = p' + S'p" + S'S"q + S'r" + r' RUN"(RUN'(Pbilingua(q))) = RUN"(RUN'(P'P"(q))) = RUN"(P"(q)) = q
рдФрд░ рд╕рд╛рдорд╛рдиреНрдп рддреМрд░ рдкрд░, рдЖрдк рдХрд┐рддрдиреА рднреА рднрд╛рд╖рд╛рдУрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ (
рдорд▓реНрдЯреА-рдкреНрд░рд┐рдВрдЯрд░ ):
Pmulti(q) = pmulti + Smultiq + rmulti pmulti = p1 + S1p2 + S1S2p3 + S1S2S3p4 Smulti = S1S2S3S4 rmulti = S1S2S3r4 + S1S2r3 + S1r2 + r1
рд╣рдо рд╕рднреА рдХреЛ рдпрд╣ рдЬрд╛рдирдиреЗ рдХреА рдЬрд░реВрд░рдд рд╣реИ рдХрд┐ рд╕рдЬреНрдЬрд╛рдХрд╛рд░реЛрдВ рдХреЗ рдХрд╛рд░реНрдпреЛрдВ рдХреА рд░рдЪрдирд╛ рдХреИрд╕реЗ рдХрд░реЗрдВред (рдЗрд╕ рдмрд╛рд░реЗ рдореЗрдВ - рдиреАрдЪреЗ)ред
рдФрд░ рдПрдХ рдФрд░ рдкреНрд░рд┐рдВрдЯрд░, рдкреВрд░реНрдгрддрд╛ рдХреЗ рд▓рд┐рдП: рдпрд╣ рдПрдХ
рдЕрд╢рдХреНрдд рдкреНрд░рд┐рдВрдЯрд░ P0 (рдкрд╛рда) = рдкрд╛рда рд╣реИ
p0 = "" r0 = "" S0 = id
рдкрд┐рдВрдЧ рдкреЛрдВрдЧ
рдЦреИрд░, рдЕрдм рдкреНрд░рд┐рдВрдЯрд░ (рдпрд╛ рдорд▓реНрдЯреА-рдкреНрд░рд┐рдВрдЯрд░) рдФрд░ рдХреНрд╡реАрди рдХреЛ рдкрд╛рд░ рдХрд░рддреЗ рд╣реИрдВред
рдпрд╣рд╛рдВ рд╕рдореАрдХрд░рдг рдХрд╛ рд╣рд▓ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдЖрд╡рд╢реНрдпрдХ рд╣реИред
рдЪрд▓реЛ рдЗрди рдХрд╛рд░реНрдпрдХреНрд░рдореЛрдВ рдХреЛ рдкрд┐рдВрдЧ рдФрд░ рдкреЛрдВрдЧ рдХрд╣рддреЗ рд╣реИрдВ:
RUN ping = pong RUN pong = ping
рдФрд░ рдкрд┐рдВрдЧ рдкреНрд░рд┐рдВрдЯрд░ P (рдкреЛрдВрдЧ) рд╣реЛ, рдФрд░ рдкреЛрдВрдЧ рдХреБрдЫ рдЕрдзрд┐рдХ рдЬрдЯрд┐рд▓ рд╣реЛред рдпрджрд┐ рдпрд╣ рдкреА (рдкрд┐рдВрдЧ) рдерд╛, рддреЛ рд╣рдо рдПрдХ рдЕрд╕реАрдо рд░реВрдк рд╕реЗ рд╡рд┐рд╕реНрддрд╛рд░рд┐рдд рд╕реНрдЯреНрд░рд┐рдВрдЧ рдХреЗ рд╕рд╛рде рд╕рдорд╛рдкреНрдд рд╣реЛ рдЬрд╛рдПрдВрдЧреЗ, рдФрд░ рд╣рдо рдЕрдВрддрд┐рдо рд╕рдорд╛рдзрд╛рди рдЪрд╛рд╣рддреЗ рд╣реИрдВред
рддреЛ рдкреЛрдВрдЧ = рдХреНрдпреВ (рдПрдл, рдПрдл, рдЬреА, рдПрдЪ, рдЖрдИ, рдЬреЗ)ред
рд╕реНрдерд╛рдирд╛рдкрдиреНрди:
ping = P pong = p + S pong + r = p + S(a + b + Ef + c + Ej + d + e) + r = p + Sa + Sb + SEf + Sc + SEj + Sd + Se + r = (p + Sa + Sb) + SEf + Sc + SEj + (Sd + Se + r) ping = RUN pong = f + g + Ff + h + Fj + i + j
рдРрд╕рд╛ рдХреНрдпреЛрдВ рд╣реИ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП
f = p+Sa+Sb
, рдФрд░
g=Sa+Sb
рдирд╣реАрдВ?
рддрдереНрдп рдпрд╣ рд╣реИ рдХрд┐ рдЪ рдФрд░ рдЬреЗ рдХреЛ рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ рдкреБрдирд░рд╛рд╡реГрддреНрддрд┐ рдХреЗ рд▓рд┐рдП рдбрд┐рдЬрд╝рд╛рдЗрди рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ: рд╣рдо рдЖрд╕рд╛рдиреА рд╕реЗ рдЙрди рдореЗрдВ рдкреЛрдВрдЧ рд╕реНрд░реЛрдд рдХреЛрдб (рд╕рдмрд╕реНрдЯреНрд░рд┐рдВрдЧ рдП, рдмреА, рдбреА, рдИ) рдХреЗ рдЯреБрдХрдбрд╝реЗ рдХрд╛ рдЙрд▓реНрд▓реЗрдЦ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдЬрдмрдХрд┐ рдЬреА, рдПрдЪ, рдЖрдИ рдореЗрдВ рдкреБрдирд░рд╛рд╡реГрддреНрддрд┐ рдЕрд╡рд╛рдВрдЫрдиреАрдп рд╣реИред
рддреЛ рд╣рдо рдорд┐рд▓ рдЧрдП
pong = a+b + E(p+Sa+Sb) + c + E(Sd+Se+r) + d+e
рдФрд░ рдХрд╣реАрдВ рдПрдХ рдпрд╛ рдИ рдХреЗ рдЖрдВрддреЛрдВ рдореЗрдВ рдлрд╝рдВрдХреНрд╢рди F = SE рдФрд░ рд╕реНрдЯреНрд░рд┐рдВрдЧ ESc рдЫрд┐рдкрд╛ рд░рд╣реЗ рд╣реИрдВред
рдиреЛрдЯ: рдпрджрд┐ рдИ рдореЗрдВ рдИрдПрд╕рд╕реА рд╣реИ, рддреЛ рдкреБрдирд░рд╛рд╡реГрддреНрддрд┐ рдирд╣реАрдВ рд╣реЛрддреА рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рд╕реА рдИ рд╕реЗ рд╕реНрд╡рддрдВрддреНрд░ рд╣реИред
рдЖрдЗрдП рдЕрдм рд╣рдо рдЗрди "рдЖрдВрддреЛрдВ рдореЗрдВ рдЫрд┐рдкрдиреЗ" рд╕реЗ рдЫреБрдЯрдХрд╛рд░рд╛ рдкрд╛рдПрдВред рдПрдХ рдФрд░ рдлрдВрдХреНрд╢рди рд▓реЗрдВред
рдЪрд▓реЛ
pong = R(F,x,y,z) = a + Ex + b + Ez + c + Ey + d RUN R(F,x,y,z) = x + Fx + y + Fz + z P pong = p+Sa + SEx + Sb + SEz + Sc+SEy+Sd+r RUN pong = x + Fx + y + Fz + z
рддреЛ рд╣рдореЗрдВ рдорд┐рд▓рд╛:
F = SE x = p+Sa y = Sb z = Sc+SEy+Sd+r = Sc + SESb + Sd + r
рдпрджрд┐ рдЖрдк рдкреЛрдВрдЧ рдХреЛ рдереЛрдбрд╝рд╛ рдЕрд▓рдЧ рддрд░реАрдХреЗ рд╕реЗ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд░рддреЗ рд╣реИрдВ,
pong = R(F,x,y,z) = a + Ex + b + Ey + b + Ez + c RUN R(F,x,y,z) = x + Fx + y + Fy + y + Fz + z
рдпрд╣реА рд╣реИ, рдЕрдЧрд░ рд╣рдореЗрдВ рд╕реНрдЯреНрд░рд┐рдВрдЧ рд╕реНрдерд┐рд░рд╛рдВрдХ рдХреА рдПрдХ рд╕реВрдЪреА рдорд┐рд▓реА, рддреЛ рд╣рдо рджреЛрд╣рд░реА рд╕рдЬрд╛рд╡рдЯ рд╕реЗ рдЫреБрдЯрдХрд╛рд░рд╛ рдкрд╛ рд▓реЗрдВрдЧреЗ:
P pong = p+Sa + SEx + Sb + SEy + Sb + SEz + Sc+r RUN pong = x + Fx + y + Fy + y + Fz + z
рдЗрд╕ рдкреНрд░рдХрд╛рд░, рдпрджрд┐ рд╣рдорд╛рд░реЗ рдкрд╛рд╕
P = {S, p,r}
рдФрд░
R = {E,a,b,c}
рд▓рд┐рдП рд░рд┐рдХреНрдд рд╕реНрдерд╛рди рд╣реИрдВ, рддреЛ рд╣рдо рддреБрд░рдВрдд рдЙрдиреНрд╣реЗрдВ рдкрд┐рдВрдЧ-рдкреЛрдВрдЧ рдореЗрдВ рдмрджрд▓ рджреЗрдВрдЧреЗред рдФрд░ рдпрд╣ рдордд рднреВрд▓реЛ рдХрд┐ рдкреА рдПрдХ рдорд▓реНрдЯреА-рдкреНрд░рд┐рдВрдЯрд░ рд╣реЛ рд╕рдХрддрд╛ рд╣реИред рдлрд┐рд░ рдкрд┐рдВрдЧ-рдкреЛрдВрдЧ n + 1 рдХреА рдЕрд╡рдзрд┐ рдХреЗ рд╕рд╛рде рджреЛрд▓рди рдХрд░реЗрдЧрд╛, рдЬрд╣рд╛рдВ n рдмрд╣реБ-рдкреНрд░рд┐рдВрдЯрд░ рдХреА рдмрд╣реБрд▓рддрд╛ рд╣реИред рдФрд░ рдпрджрд┐ P рдПрдХ рдЕрд╢рдХреНрдд рдкреНрд░рд┐рдВрдЯрд░ рд╣реИ, рддреЛ рдкрд┐рдВрдЧ-рдкреЛрдВрдЧ 1 рдХреА рдЕрд╡рдзрд┐ рдХреЗ рд╕рд╛рде рджреЛрд▓рди рдХрд░реЗрдЧрд╛ рдФрд░ (рдЬрд┐рд╕рдиреЗ рд╕реЛрдЪрд╛ рд╣реЛрдЧрд╛?) рдПрдХ рдХреНрд╡реАрди рдмрди рдЬрд╛рддрд╛ рд╣реИред
рдЖрдЦрд┐рд░реА рдЪреАрдЬ рдЬреЛ рд╣рдорд╛рд░реЗ рд▓рд┐рдП рдмрдиреА рд╣реБрдИ рд╣реИ рд╡рд╣ рд╣реИ рдХрдВрдкреЛрдЬрд┐рд╢рди рдПрд╕рдИред
рдФрдкрдЪрд╛рд░рд┐рдХ рд░реВрдк рд╕реЗ, рдХрд╛рд░реНрдп рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИред
рджрд┐рдпрд╛ рдЧрдпрд╛: рдкреЛрдВрдЧ рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рднрд╛рд╖рд╛; рд╕рдЬреНрдЬрд╛рдХрд╛рд░ рдИ рдФрд░ рдПрд╕, рдЗрд╕ рднрд╛рд╖рд╛ рдХреЗ рдИ рдореВрд▓ рдирд┐рд╡рд╛рд╕реА рдХреЗ рд╕рд╛рде, рдФрд░ рдПрд╕ рдХреЛрдИ рднреАред
рдЦреЛрдЬреЗрдВ: рдкреМрдВрдЧ рд╕рдмрд░реВрдЯреАрди рдкрд╛рда рдЬреЛ рдПрд╕рдИ рдбреЗрдХреЛрд░реЗрдЯрд░ рдХреЛ рд▓рд╛рдЧреВ рдХрд░рддрд╛ рд╣реИред
рдФрд░ рдЙрд╕реА рд╕рдордп, рд╡рд┐рдХрд╛рд╕ рдкрд░реНрдпрд╛рд╡рд░рдг рдХреА рднрд╛рд╖рд╛ рдореЗрдВ рд╕рдЬреНрдЬрд╛рдХрд╛рд░ рдИ рдФрд░ рдПрд╕рдИ рд▓рд╛рдЧреВ рдХрд░реЗрдВред рдЖрдЦрд┐рд░рдХрд╛рд░, рд╣рдо рдмрд╣реБрд╕реНрддрд░реАрдп рдХреА рдкреАрдврд╝реА рдХреЛ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ?
рдРрд╕рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдЗрдП рджреЗрдЦреЗрдВ рдХрд┐ рд╕рдЬреНрдЬрд╛рдХрд╛рд░ рдлрд┐рд░ рд╕реЗ рдХреИрд╕реЗ рд╡реНрдпрд╡рд╕реНрдерд┐рдд рд╣реЛрддреЗ рд╣реИрдВред
рдбреЗрдХреЛрд░реЗрдЯрд░ рдЗрд╕рдХреЗ рдЕрддрд┐рд░рд┐рдХреНрдд рд╡рд┐рддрд░рдг рдпреЛрдЧреНрдп рд╣реИ: F (a + b) = Fa + Fbред
рдпрджрд┐ рд╣рдо рд╕реНрдЯреНрд░рд┐рдВрдЧ рдХреЛ рдкреНрд░рд╛рдердорд┐рдХ рднрд╛рдЧреЛрдВ рдореЗрдВ рддреЛрдбрд╝рддреЗ рд╣реИрдВ - рдПрдХрд▓-рд╡рд░реНрдг рд╕реНрдЯреНрд░рд┐рдВрдЧреНрд╕, рд╣рдо рдкреНрд░рд╛рдкреНрдд рдХрд░рддреЗ рд╣реИрдВ
F(abcdтАж) = Fa + Fb + Fc + Fd + тАж
рд╕рдЬреНрдЬрд╛рдХрд╛рд░ рд╕рд╣рдпреЛрдЧреА рд╣реИрдВ:
FG(abcdтАж) = FGa + FGb + FGc + FGd + тАж
рдЗрд╕рд▓рд┐рдП, рд╣рдо рдбреЗрдХреЛрд░реЗрдЯрд░ рдХреЛ рдкреНрд░рддреНрдпреЗрдХ рд╡рд░реНрдг рдХреЗ рд▓рд┐рдП рдПрдХ рдХреЛрдбрд┐рдВрдЧ рдЯреЗрдмрд▓ рдХреЗ рд░реВрдк рдореЗрдВ рдкреНрд░рд╕реНрддреБрдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдФрд░ рд░рдЪрдирд╛ рдХреЛ рддрд╛рд▓рд┐рдХрд╛ рдореЗрдВ рд╕рдорд╛рди рдХреБрдВрдЬреА рдХреЗ рд╕рд╛рде, рд▓реЗрдХрд┐рди рд▓рдВрдмреЗ рд╕рдордп рддрдХ рдорд╛рди рдХреЗ рд╕рд╛рде рдкреБрдирд░реНрдЧрдгрдирд╛ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред
рдЗрд╕ рдкреНрд░рдХрд╛рд░, рдХрд╛рд░реНрдп рдпреЛрдЬрдирд╛ рдЗрд╕ рдкреНрд░рдХрд╛рд░ рдереА:
рджрд┐рдП рдЧрдП:
- рдЕрдЬреНрдЮрд╛рдд рднрд╛рд╖рд╛рдУрдВ рдореЗрдВ рдкреНрд░рд┐рдВрдЯрд░
{Sk,pk,rk}
(рд╣рдо рд╕рднреА рдХреА рдЬрд░реВрд░рдд рд╣реИ Sk рдХрд╛рд░реНрдпреЛрдВ рдХрд╛ рд╕рд┐рд░реНрдл рдПрдХ рдЯреЗрдмрд▓ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рд╣реИ); - рдкреЛрдВрдЧ рдЯреЗрдореНрдкрд▓реЗрдЯ
{E,a(F),b,c(F)}
, рдЬрд╣рд╛рдВ рдПрдХ рдпрд╛ рдбреА рдПрдХ рдордирдорд╛рдирд╛ рдХреЛрдб рдЯреЗрдмрд▓ рдПрдл рдХреЗ рд▓рд┐рдП рдПрдХ рд╕реНрдерд╛рди рдЖрд░рдХреНрд╖рд┐рдд рдХрд░рддрд╛ рд╣реИ (рдЗрд╕рд▓рд┐рдП рдП рдФрд░ рд╕реА рддрд╛рд░ рдирд╣реАрдВ рд╣реИрдВ рдФрд░ рддрд╛рд░ рдкрд░ рдХрд╛рд░реНрдп рдирд╣реАрдВ рдХрд░рддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдЙрдЪреНрдЪ-рдХреНрд░рдо рдХреЗ рдХрд╛рд░реНрдп)ред
рд╣рдо рдХрд╛рд░реНрдп рдХрд░рддреЗ рд╣реИрдВ:
- рд╣рдо рдмрд╣реБ-рдкреНрд░рд┐рдВрдЯрд░
{S,p,r}
, S1S2...
рдЧрдгрдирд╛ S1S2...
рддрд╛рд▓рд┐рдХрд╛рдУрдВ рд╕реЗред - рд╣рдо рдЯреЗрдмрд▓
F = SE
рдкрд╛рддреЗ рд╣реИрдВред - рдпрджрд┐ рд╡рд╛рдВрдЫрд┐рдд рд╣реИ, рддреЛ рд╣рдо рдиреНрдпреВрдирддрдо рд╡рд░реНрдгрдорд╛рд▓рд╛ рдкрд╛рддреЗ рд╣реИрдВ - рд╡рд░реНрдгреЛрдВ рдХрд╛ рд╕рдореВрд╣ рдЬреЛ p, r, Sa, Sb, Sc, Sd рдмрдирд╛рддреЗ рд╣реИрдВред рдпрд╣ рдЗрд╕рд▓рд┐рдП рд╣реИ рдХрд┐ рд╕рднреА ASCII рдпрд╛, рднрдЧрд╡рд╛рди рди рдХрд░реЗ, рдпреВрдирд┐рдХреЛрдб рдХреА рдХреЛрдбрд┐рдВрдЧ рдЯреЗрдмрд▓ рдХреЛ рдвреЗрд░ рди рдХрд░реЗрдВред
- рддрд╛рд▓рд┐рдХрд╛ рдХреЛ c рдпрд╛ c рдореЗрдВ рдЪрд┐рдкрдХрд╛рдПрдБред
- рд╣рдо
x=(p+Sa), y=(Sb), z=(Sc+r)
рдкрд╛рддреЗ рд╣реИрдВред - рд╣рдо рдПрдХ рдкреЛрдВрдЧ рдмрдирд╛рддреЗ рд╣реИрдВ:
a+Ex+b+Ey+b+Ey+c
ред
рд╡рд╣ рд╕рдм рд╣реИ!
рдФрд░ рдЪреВрдВрдХрд┐ рдпреЗ рд╕рднреА рдЪрд░рдг рдореИрдиреНрдпреБрдЕрд▓ рд░реВрдк рд╕реЗ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдмрд╣реБрдд рдЕрдзрд┐рдХ рд╕рдордп рд▓реЗрдиреЗ рд╡рд╛рд▓реЗ рд╣реИрдВ, рдЗрд╕рд▓рд┐рдП рдПрдХ рдХреНрд╡реАрди рдЬрдирд░реЗрдЯрд░ рд▓рд┐рдЦреЗрдВред
рдпрд╣рд╛рдВ, рд╢реБрд░реБрдЖрдд рдХреЗ рд▓рд┐рдП, рдПрдХ рдЕрдЬрдЧрд░ рдХреЛрдб рдЬреЛ (рдлрд┐рд▓рд╣рд╛рд▓) рдЕрдЬрдЧрд░ рдФрд░ рд╕реА рд╕реЗ рдмрд╣реБрд╕реНрддрд░реАрдп рдмрдирд╛рддрд╛ рд╣реИред
рдХрд┐рд╕реА рднреА рдЕрдиреНрдп рднрд╛рд╖рд╛рдУрдВ рдХреЗ рд╕рд╛рде рдЗрд╕реЗ рдкреВрд░рдХ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рджрд╕ рдорд┐рдирдЯ рдХреА рдмрд╛рдд рд╣реИред
рд╕реНрд░реЛрдд рдФрд░ рдЙрд╕рдХреЗ рдлрд▓ рдмрд╛рд▓реНрдЯреА рдкрд░ рдкрд╛рдП рдЬрд╛ рд╕рдХрддреЗ рд╣реИрдВ:
bitbucket.org/nickolaym/quinesрдмреЗрд╢рдХ, рдорд╢реАрди рджреНрд╡рд╛рд░рд╛ рдЙрддреНрдкрдиреНрди рдорд▓реНрдЯреАрдХреАрдЗрди рдЕрдиреБрдЧреНрд░рд╣ рдореЗрдВ рднрд┐рдиреНрди рдирд╣реАрдВ рд╣реЛрддреА рд╣реИред рдЗрд╕рдХрд╛ рдЖрдХрд╛рд░ 5438 рдмрд╛рдЗрдЯреНрд╕ рд╣реИ, рдПрдиреНрдХреЛрдбрд┐рдВрдЧ рдЯреЗрдмрд▓ рдЗрд╕рдореЗрдВ рд╕рдмрд╕реЗ рдЕрдзрд┐рдХ рд╣реИред
рдЗрд╕реЗ рдЕрдзрд┐рдХ рдХреЙрдореНрдкреИрдХреНрдЯ рдХреИрд╕реЗ рдмрдирд╛рдпрд╛ рдЬрд╛рдП (рджреГрд╖реНрдЯрд┐рдХреЛрдг рдХреА рд╕рд╛рд░реНрд╡рднреМрдорд┐рдХрддрд╛ рдФрд░ рдорд╢реАрди рдкреАрдврд╝реА рдХреЗ рд▓рд┐рдП рд╕рдВрднрд╛рд╡рдирд╛ рдХреЛ рд╕рдВрд░рдХреНрд╖рд┐рдд рдХрд░рддреЗ рд╣реБрдП) - рдореИрдВ рдЕрдкрдиреЗ рджрдо рдкрд░ рдЗрд╕ рд╕рдорд╕реНрдпрд╛ рдХреЛ рд╣рд▓ рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рд╕реНрддрд╛рд╡ рдХрд░рддрд╛ рд╣реВрдВред
рдпрджрд┐ рдЖрдк рдЗрд╕реЗ рдкрд╕рдВрдж рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рдореИрдВ рдЗрд╕ рд╡рд┐рд╖рдп рдкрд░ рдФрд░ рд▓рд┐рдЦреВрдВрдЧрд╛:
- рдХрд╛рд░реНрдпрдХреНрд░рдореЛрдВ рдХреА рд╕реВрдЪреА рдкрд░ рдХрд╛рд░реНрдп рдХрд░рддрд╛ рд╣реИ
- рдмреБрджреНрдзрд┐рд╢реАрд▓рддрд╛ рдХреА рддрд░рд╣ рдЧреВрдВрдЧрд╛ рднрд╛рд╖рд╛рдУрдВ рдХреА рд╕реБрд╡рд┐рдзрд╛рдПрдБ
4 рд╕рд╛рд▓ рдкрд╣рд▓реЗ RSDN рдкрд░ рдореЗрд░реА рдЪреЗрддрдирд╛ рдХреА рдзрд╛рд░рд╛ рднреА рджреЗрдЦреЗрдВред
http://rsdn.ru/forum/etude/3604693