рдХреЛрдб рд▓рд┐рдЦрдиреЗ рд╡рд╛рд▓реЗ рд╕рд╛рдХреНрд╖рд╛рддреНрдХрд╛рд░ рдХреЗ рд▓рд┐рдП рдЙрдореНрдореАрджрд╡рд╛рд░ рдХреНрдпрд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ?

рд╣рд╛рдп, рд╣рдмреНрд░реЛрд╕реНрдХред рдЬрд╛рд╡рд╛ рдХреНрдпреВрдП рдЗрдВрдЬреАрдирд┐рдпрд░ рдХреЛрд░реНрд╕ рдХреА рд╢реБрд░реБрдЖрдд рдХреА рдкреВрд░реНрд╡ рд╕рдВрдзреНрдпрд╛ рдкрд░ , рд╣рдо рдЖрдкрдХреЗ рд╕рд╛рде рдЗрд╕ рд╕рд╛рдордЧреНрд░реА рдХреА рдирд┐рд░рдВрддрд░рддрд╛ рд╕рд╛рдЭрд╛ рдХрд░ рд░рд╣реЗ рд╣реИрдВ
ред




рдЕрдкрдиреЗ рдкрд╣рд▓реЗ рд╕рд╛рдХреНрд╖рд╛рддреНрдХрд╛рд░ рдореЗрдВ, рдореБрдЭреЗ рдпрд╣ рдирд╣реАрдВ рдкрддрд╛ рдерд╛ред рд▓реЗрдХрд┐рди рдбреЗрд╡рд▓рдкрд░реНрд╕ рдиреЗ рд╕рд┐рд░реНрдл рдореБрдЭреЗ рдирд╣реАрдВ рджреЗрдЦрд╛ - рд╡реЗ рдЙрдореНрдореАрдж рдХрд░рддреЗ рдереЗред рдЙрдиреНрд╣реЛрдВрдиреЗ рдореБрдЭрд╕реЗ рдЕрдкреЗрдХреНрд╖рд╛ рдХреА рдХрд┐ рдореИрдВ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдПрд▓реНрдЧреЛрд░рд┐рдереНрдо рдХреЗ рдЕрдиреБрд╕рд╛рд░ рдХрд╛рд░реНрдп рдХрд░реВрдБ:

рдХрд╛рд░реНрдп рдХреЛ рдкрд░рд┐рд╖реНрдХреГрдд рдХрд░реЗрдВ

  • рдкреВрдЫреЛ: "рдХреНрдпрд╛ рдЖрдк рд╢рдмреНрдж palindrome рд╕реЗ рдорддрд▓рдм рд╣реИ?"
  • рдпрд╣ рд╕рд╡рд╛рд▓ рдХрд╛ рдЬрд╡рд╛рдм рджреЗрддрд╛ рд╣реИ: рдХреНрдпрд╛ рдЙрдореНрдореАрджрд╡рд╛рд░ рддреБрд░рдВрдд рд╕рдорд╕реНрдпрд╛ рдХреЛ рд╣рд▓ рдХрд░рдирд╛ рд╢реБрд░реВ рдХрд░ рджреЗрдЧрд╛ - рдпрд╣рд╛рдВ рддрдХ тАЛтАЛрдХрд┐ рдпрд╣ рдорд╣рд╕реВрд╕ рдХрд┐рдП рдмрд┐рдирд╛ рдХрд┐ рдЗрд╕рдХреА рддрдХрдиреАрдХреА рд╕реНрдерд┐рддрд┐рдпрд╛рдВ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рд╕реНрдкрд╖реНрдЯ рдирд╣реАрдВ рд╣реИрдВ? рдпрд╛ рдереЛрдбрд╝рд╛ рд╕реЛрдЪреЗрдВ рдФрд░ рдЖрд╡рд╢реНрдпрдХрддрд╛рдУрдВ рдХреЛ рд╕реНрдкрд╖реНрдЯ рдХрд░реЗрдВ? тАЭ

тАЬрд╣рдорд╛рд░рд╛ рдорддрд▓рдм рдПрдХ рдРрд╕рд╛ рдХреНрд░рдо рд╣реИ рдЬреЛ рдмрд╛рдПрдВ рд╕реЗ рджрд╛рдПрдВ рдФрд░ рджрд╛рдПрдВ рд╕реЗ рдмрд╛рдПрдВ рд╕реЗ рдПрдХ рд╣реА рдкрдврд╝рддрд╛ рд╣реИред рдЖрдкрдХрд╛ рдирд┐рд░реНрдгрдп рд╕рдВрд╡реЗрджрдирд╢реАрд▓ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП: рдЫреЛрдЯрд╛ r рдмрдбрд╝реЗ r рдХреЗ рд╕рдорд╛рди рдирд╣реАрдВ рд╣реИред "

рдЙрджрд╛рд╣рд░рдгреЛрдВ рд╕реЗ рд╢реБрд░реВ рдХрд░реЗрдВ

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



рдХреЛрдб рд╡рд┐рд╡рд░рдг рд╢реБрд░реВ рдХрд░рдиреЗ рд╕реЗ рдкрд╣рд▓реЗ, рдЗрдВрдЯрд░рд╡реНрдпреВрдЕрд░ рдХреЛ рдЕрд▓реНрдЧреЛрд░рд┐рдердо рд╕реЗ рдкрд░рд┐рдЪрд┐рдд рдХрд░рд╛рдПрдВ


рдЙрдореНрдореАрджрд╡рд╛рд░ рд╕рдорд╕реНрдпрд╛ рдХреЗ рд╕рдорд╛рдзрд╛рди рдХреЗ рд▓рд┐рдП рдХреИрд╕реЗ рд╕рдВрдкрд░реНрдХ рдХрд░рддрд╛ рд╣реИ? рдХреНрдпрд╛ рд╡рд╣ рдЕрдкрдиреЗ рд╡рд┐рдЪрд╛рд░реЛрдВ рдХреЛ рдЬрд╝реЛрд░ рд╕реЗ рдмреЛрд▓рддрд╛ рд╣реИ рддрд╛рдХрд┐ рд╕рд╛рдХреНрд╖рд╛рддреНрдХрд╛рд░рдХрд░реНрддрд╛ рдЙрдиреНрд╣реЗрдВ рд╕реБрдирддрд╛ рд╣реИ?

рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, string s = "alla" ред

рд╣рдо рдЬрд╛рд╡рд╛ рд╕реНрдЯреНрд░рд┐рдВрдЧ, charAt (int i) рдХреЗ рд▓рд┐рдП рд╕рд╣рд╛рдпрдХ рд╡рд┐рдзрд┐ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рд╡рд┐рдзрд┐ рдореЗрдВ рдкрдВрдХреНрддрд┐ рд╕реВрдЪрдХрд╛рдВрдХ рджрд░реНрдЬ рдХрд░реЗрдВ, рдФрд░ рдпрд╣ рд╕реВрдЪрдХрд╛рдВрдХ рдореЗрдВ рдЪрд░рд┐рддреНрд░ рдХрд╛ рдЙрддреНрдкрд╛рджрди рдХрд░реЗрдЧрд╛:

 s.charAt(0) == 'a' s.charAt(1) == 'l' s.charAt(2) == 'l' s.charAt(3) == 'a' 

рдХрд┐рд╕реА рд╕реНрдЯреНрд░рд┐рдВрдЧ рдХреА рд▓рдВрдмрд╛рдИ рдЬрд╛рдирдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдк length() рд╡рд┐рдзрд┐ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ:

s.length == 4

рдЕрдВрддрд┐рдо рд╡рд░реНрдг рдХрд╛ рдкрддрд╛ рд▓рдЧрд╛рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдк рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ:

 int len = s.length s.charAt(len - 1) 

рд╣рдордиреЗ 0 рд╕реЗ рдЧрд┐рдирддреА рд╢реБрд░реВ рдХреА, рдЗрд╕рд▓рд┐рдП рдЕрдВрддрд┐рдо рдЪрд░рд┐рддреНрд░ "рд▓рдВрдмрд╛рдИ рд╢реВрдиреНрдп 1" рд╣реЛрдЧрд╛ред

рдЪрд▓реЛ рдкрд╣рд▓реЗ рдЪрд░рд┐рддреНрд░ рдХреЛ "рдкрд╣рд▓реЗ" рдФрд░ рдЖрдЦрд┐рд░реА "рдЕрдВрддрд┐рдо" рдХрд╣рддреЗ рд╣реИрдВред

  • рдпрджрд┐ рдкрд╣рд▓рд╛ рд╡рд░реНрдг s.charAt (рдкреНрд░рдердо) s.charAt (рдЕрдВрддрд┐рдо) рд╕реЗ рдореЗрд▓ рдирд╣реАрдВ рдЦрд╛рддрд╛ рд╣реИ, рддреЛ рдпрд╣ рдПрдХ palindrome рдирд╣реАрдВ рд╣реИред рдЖрдЙрдЯрдкреБрдЯ рдЭреВрдард╛ рд╣реИред
  • рдпрджрд┐ s.charAt (рдкрд╣рд▓рд╛) рдХрд╛ рдкрд╣рд▓рд╛ рд╡рд░реНрдг s.charAt (рдЕрдВрддрд┐рдо) рд╕реЗ рдореЗрд▓ рдЦрд╛рддрд╛ рд╣реИ, рддреЛ рд╣рдо рд╡рд░реНрдгреЛрдВ рдХреЗ рдЕрдЧрд▓реЗ рд╕реЗрдЯ рдХрд╛ рдореВрд▓реНрдпрд╛рдВрдХрди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЖрдЧреЗ рдмрдврд╝рддреЗ рд╣реИрдВ, рдПрдХ рд╡рд░реНрдг рдХреЛ "рдкрд╣рд▓реЗ" рдФрд░ "рдЕрдВрддрд┐рдо" рд╕реЗ рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рдХрд░рддреЗ рд╣реИрдВред рдпрджрд┐ рд╕рдм рдХреБрдЫ рдореЗрд▓ рдЦрд╛рддрд╛ рд╣реИ, рддреЛ рд╕рдЪ рдкреНрд░рд┐рдВрдЯ рдХрд░реЗрдВред
  • рд╕рд╛рдХреНрд╖рд╛рддреНрдХрд╛рд░рдХрд░реНрддрд╛ рдХреЗ рд╕рд╛рде рдПрд▓реНрдЧреЛрд░рд┐рдереНрдо рдХреА рдЬрд╛рдВрдЪ рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж, рдЖрдк рдХреЛрдб рд▓рд┐рдЦрдирд╛ рд╢реБрд░реВ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ:

 public boolean isPalindrome(String s) { int first = 0; int last = s.length() - 1; while (first < last) { if (s.charAt(first) != s.charAt(last)) { return false; } first++; last--; } return true; } 

рдбрд┐рдмрдЧрд┐рдВрдЧ рдФрд░ рдкрд░реАрдХреНрд╖рдг


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

рдЕрдиреНрдп рд▓реЛрдЧреЛрдВ рдХреЛ рдЕрдкрдирд╛ рдХреЛрдб рджрд┐рдЦрд╛рдПрдВ рдФрд░ рдЙрдирдХреА рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдПрдХрддреНрд░ рдХрд░реЗрдВ


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

 public boolean isPalindrome(String s) { int len = s.length; for (int i = 0; i < len / 2; i++) { if ( s.charAt(i) != s.charAt(len - 1 - i)) { return false; } } return true; } 

рдЖрдЧреЗ рдХреНрдпрд╛ рд╣реИ


рд░рд╛рддрднрд░ рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рд▓реИрдВрдЧреНрд╡реЗрдЬ рдореЗрдВ рдорд╛рд╣рд┐рд░ рд╣реЛрдиреЗ рд╕реЗ рдХрд╛рдо рдирд╣реАрдВ рдЪрд▓реЗрдЧрд╛ред рдЗрд╕рд▓рд┐рдП, рдЗрд╕ рдПрд▓реНрдЧреЛрд░рд┐рдереНрдо рдХрд╛ рдкрд╛рд▓рди рдХрд░рдирд╛ рдмреЗрд╣рддрд░ рд╣реИ:

  • рдСрдирд▓рд╛рдЗрди рдмреБрдирд┐рдпрд╛рджреА рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рдХрд╛рд░реНрдпреЛрдВ рдХрд╛ рдкрддрд╛ рд▓рдЧрд╛рдПрдВред
  • рдЙрдиреНрд╣реЗрдВ рдХрд╛рдЧрдЬ рдФрд░ рдХрд▓рдо рд╕реЗ рд╣рд▓ рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░реЗрдВред
  • рдпрджрд┐ рдЖрдк рдЙрдиреНрд╣реЗрдВ рд╣рд▓ рдирд╣реАрдВ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рддреЛ рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рднрд╛рд╖рд╛ рдХреЗ рдЖрдзрд┐рдХрд╛рд░рд┐рдХ рджрд╕реНрддрд╛рд╡реЗрдЬ рджреЗрдЦреЗрдВ рдФрд░ рджреЗрдЦреЗрдВ рдХрд┐ рдХреМрди рд╕реЗ рдЕрдВрддрд░реНрдирд┐рд╣рд┐рдд рддрд░реАрдХреЗ рдЖрдкрдХреА рдорджрдж рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред
  • рдХрд┐рд╕реА рдФрд░ рдХреА рддрд▓рд╛рд╢ рдХрд░рдиреЗ рд╕реЗ рдкрд╣рд▓реЗ рдЕрдкрдиреЗ рд╕реНрд╡рдпрдВ рдХреЗ рдирд┐рд░реНрдгрдп рдХреЛ рддреИрдпрд╛рд░ рдХрд░реЗрдВред рдпрджрд┐ рдЖрдк рд╕реНрд╡рдпрдВ рдЬрд╛рдирдХрд╛рд░реА рдПрдХрддреНрд░ рдХрд░реЗрдВрдЧреЗ рдФрд░ рдЙрд╕рдХрд╛ рдЕрдзреНрдпрдпрди рдХрд░реЗрдВрдЧреЗ, рддреЛ рдПрдХ рдореМрдХрд╛ рд╣реЛрдЧрд╛ рдХрд┐ рдпрд╣ рдЬрд╛рдирдХрд╛рд░реА рдЖрдкрдХреЗ рд╕рд┐рд░ рдореЗрдВ рд╕реНрдерд╛рдпреА рд░реВрдк рд╕реЗ рдмрд╕ рдЬрд╛рдПрдЧреАред
  • Cramming рд╕рддреНрд░ рдХреА рд╡реНрдпрд╡рд╕реНрдерд╛ рди рдХрд░реЗрдВред рддреЛ рдЖрдк рдмрд╕ рд╢реЙрд░реНрдЯ-рдЯрд░реНрдо рдореЗрдореЛрд░реА рдореЗрдВ рдЬрд╛рдирдХрд╛рд░реА рдХреЛ рд╕рд╣реЗрдЬрддреЗ рд╣реИрдВред
  • рджрд┐рди рдореЗрдВ 15 рдорд┐рдирдЯ рдЫреЛрдЯреЗ рд░рди рдХрд╛ рдЕрднреНрдпрд╛рд╕ рдХрд░реЗрдВред рдЗрд╕рд▓рд┐рдП рд╕реВрдЪрдирд╛ рдПрдХ рджреАрд░реНрдШрдХрд╛рд▓рд┐рдХ рд╕реНрдореГрддрд┐ рдореЗрдВ рдЪрд▓реА рдЬрд╛рдПрдЧреА, рдФрд░ рдЖрдк рдЗрд╕реЗ рд╕рд╛рдХреНрд╖рд╛рддреНрдХрд╛рд░ рдХреЗ рджреМрд░рд╛рди рдЕрддреНрдпрдзрд┐рдХ рддрдирд╛рд╡ рдХреЗ рд╕рд╛рде рднреА рдпрд╛рдж рд░рдЦ рд╕рдХрддреЗ рд╣реИрдВред
  • рд╕рд┐рд░реНрдл рдмреЛрд░реНрдб рдкрд░ рдкрд░реАрдХреНрд╖рд╛ рдкрд╛рд╕ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЗрд╕ рд╕рднреА рдкреАрдбрд╝рд╛ рдХреЛ рдЙрдЬрд╛рдЧрд░ рди рдХрд░реЗрдВред рдЕрдзрд┐рдХ рд╕реЗ рдЕрдзрд┐рдХ рдирд┐рд╢рд╛рдирд╛ рд▓рдЧрд╛рдУ! рдЕрдкрдиреЗ рдЖрдк рдХреЛ рдПрдХ рдЕрдзрд┐рдХ рдкреЗрд╢реЗрд╡рд░ рдкреНрд░реЛрдЧреНрд░рд╛рдорд░ рдмрдирдиреЗ рдХрд╛ рдХрд╛рд░реНрдп рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░реЗрдВ!

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


All Articles