рдШреБрдЯрдиреЗ рдкрд░ рд╣реИрд╢рд▓рд╛рдЗрдл

рддреАрди рдЖрдпрд╛рдореА рдЦреЗрд▓ "рд▓рд╛рдЗрдл" рдХреЗ рд╕рд╛рде рдЙрдкрджреНрд░рд╡ рдХреЗ рдмрд╛рдж , рдореБрдЭреЗ рдпрд╛рдж рдЖрдпрд╛ рдХрд┐ рдЗрд╕ рдЦреЗрд▓ рдХреЗ рдПрдХ рд╕рд╛рдзрд╛рд░рдг, рдХрд╛рдлрд┐рд▓реЗ рд╕рдВрд╕реНрдХрд░рдг рдХреЗ рд▓рд┐рдП, "рд╣реИрд╢рд▓рд╛рдЗрдл" рдирд╛рдордХ рдПрдХ рдПрд▓реНрдЧреЛрд░рд┐рдереНрдо рд╣реИ ред рд╡рд┐рдХрд┐рдкреАрдбрд┐рдпрд╛ рдкрд░ рдХрдИ рд╡рд╛рдХреНрдпрд╛рдВрд╢реЛрдВ рдореЗрдВ рдЗрд╕рдХрд╛ рд╡рд░реНрдгрди рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛, рдФрд░ рдЗрд╕ рдЯрд┐рдкреНрдкрдгреА рдХреЗ рд╕рд╛рде рд╡рд╣рд╛рдВ рдХреА рддрд╕реНрд╡реАрд░ ("6 рдСрдХреНрдЯрд┐рд▓рд┐рдпрди рдкреАрдврд╝рд┐рдпреЛрдВ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди") рдореЗрд░реЗ рд▓рд┐рдП рдЗрд╕ рд╡рд┐рдЪрд╛рд░ рд╕реЗ рджреВрд░ рд░рд╣рдиреЗ рдХреЗ рд▓рд┐рдП рдкрд░реНрдпрд╛рдкреНрдд рдереА: рдЗрд╕ рдПрд▓реНрдЧреЛрд░рд┐рдереНрдо рдХреЛ рдХрд┐рддрдиреЗ рд╕рдВрд╕рд╛рдзрдиреЛрдВ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ? рдХреНрдпрд╛ рдореБрдЭреЗ рдЗрд╕реЗ рдмрд┐рд▓реНрдХреБрд▓ рд▓реЗрдирд╛ рдЪрд╛рд╣рд┐рдП?

рдПрд▓реНрдЧреЛрд░рд┐рдереНрдо рдХрд╛ рд╕рд╛рдорд╛рдиреНрдп рд╡рд┐рдЪрд╛рд░ рдпрд╣ рд╣реИред

рдорд╛рди рд▓реАрдЬрд┐рдП рдХрд┐ рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдЖрдХрд╛рд░ N * N рдХреЗ рдХреНрд╖реЗрддреНрд░ рдХрд╛ рдПрдХ рд╡рд░реНрдЧ рд╣реИ (N> = 4 рджреЛ рдХреА рд╢рдХреНрддрд┐ рд╣реИ)ред рддрдм рд╣рдо рд╡рд┐рд╢рд┐рд╖реНрдЯ рд░реВрдк рд╕реЗ рдЗрд╕рдХреЗ рдЖрдХрд╛рд░ рдХреЗ рдордзреНрдп рдХреНрд╖реЗрддреНрд░ (N / 2) * (N / 2) рдХреА рд╕реНрдерд┐рддрд┐ рдХреЛ T = N / 4 рдЪрд░рдгреЛрдВ рдХреЗ рдЕрдиреБрд╕рд╛рд░ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдпрджрд┐ рд╣рдо рдореВрд▓ рд╡рд░реНрдЧ рдХреА рд╕реНрдерд┐рддрд┐ рдФрд░ рд╢рдмреНрджрдХреЛрд╢ рдореЗрдВ рдЗрд╕рдХреЗ рд╡рд┐рдХрд╛рд╕ рдХреЗ рдкрд░рд┐рдгрд╛рдо рдХреЛ рдпрд╛рдж рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рдЕрдЧрд▓реА рдмрд╛рд░ рдЬрдм рд╣рдо рдЗрд╕ рддрд░рд╣ рдХреЗ рд╡рд░реНрдЧ рд╕реЗ рдорд┐рд▓рддреЗ рд╣реИрдВ, рддреЛ рд╣рдо рддреБрд░рдВрдд рдпрд╣ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ рдЗрд╕рд╕реЗ рдХреНрдпрд╛ рдмрди рдЬрд╛рдПрдЧрд╛ред

рдорд╛рди рд▓реАрдЬрд┐рдП рдХрд┐ рдПрди * рдПрди рд╡рд░реНрдЧреЛрдВ рдХреЗ рд▓рд┐рдП рд╣рдо рдПрди / 4 рдЪрд░рдгреЛрдВ рдкрд░ рд╡рд┐рдХрд╛рд╕ рдХреА рдЧрдгрдирд╛ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдорд╛рди рд▓реАрдЬрд┐рдП рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдПрдХ рд╡рд░реНрдЧ 2N * 2N рд╣реИред рдПрди / 2 рдЪрд░рдгреЛрдВ рдкрд░ рдЗрд╕рдХреЗ рд╡рд┐рдХрд╛рд╕ рдХреА рдЧрдгрдирд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдк рдирд┐рдореНрди рдХрд╛рд░реНрдп рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред

рд╣рдо рд╕рд╛рдЗрдб рдПрди / 2 рдХреЗ рд╕рд╛рде рд╡рд░реНрдЧ рдХреЛ 16 рд╡рд░реНрдЧреЛрдВ рдореЗрдВ рд╡рд┐рднрд╛рдЬрд┐рдд рдХрд░рддреЗ рд╣реИрдВред рд╣рдо рд╕рд╛рдЗрдб рдПрди рдХреЗ рд╕рд╛рде 9 рд╡рд░реНрдЧ рдмрдирд╛рддреЗ рд╣реИрдВ, рдЙрдирдореЗрдВ рд╕реЗ рдкреНрд░рддреНрдпреЗрдХ рдХреЗ рд▓рд┐рдП рд╣рдо рдПрди / 4 рдЪрд░рдгреЛрдВ рджреНрд╡рд╛рд░рд╛ рд╡рд┐рдХрд╛рд╕ рдХрд╛ рдкрд░рд┐рдгрд╛рдо рдкрд╛рддреЗ рд╣реИрдВред рд╕рд╛рдЗрдб N / 2 рдХреЗ рд╕рд╛рде 9 рд╡рд░реНрдЧ рдкреНрд░рд╛рдкреНрдд рдХрд░реЗрдВред рдмрджрд▓реЗ рдореЗрдВ, рд╣рдо рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рд╕рд╛рдЗрдб рдПрди рдХреЗ рд╕рд╛рде рдЙрдирдХреЗ 4 рд╡рд░реНрдЧ рдмрдирд╛ рджреЗрдВрдЧреЗ, рдФрд░ рдЙрдирдореЗрдВ рд╕реЗ рдкреНрд░рддреНрдпреЗрдХ рдХреЗ рд▓рд┐рдП рд╣рдо рдПрди рдХреЗ 4 рдЪрд░рдгреЛрдВ рджреНрд╡рд╛рд░рд╛ рд╡рд┐рдХрд╛рд╕ рдХрд╛ рдкрд░рд┐рдгрд╛рдо рдкрд╛рдПрдВрдЧреЗред рд╕рд╛рдЗрдб рдПрди / 2 рдХреЗ рд╕рд╛рде рдкрд░рд┐рдгрд╛рдореА 4 рд╡рд░реНрдЧ рд╕рд╛рдЗрдб рдПрди рдХреЗ рд╕рд╛рде рдПрдХ рд╡рд░реНрдЧ рдореЗрдВ рд╕рдВрдпреБрдХреНрдд рд╣реИрдВ - рдЗрд╕рдХрд╛ рдЙрддреНрддрд░ рд╣реЛрдЧрд╛ред





рдПрд▓реНрдЧреЛрд░рд┐рдереНрдо рдХреЛ рд▓рд╛рдЧреВ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рд╣рдореЗрдВ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП:

  1. рд╡рд░реНрдЧ рдХреЛ рдЪрд╛рд░ рд╡рд░реНрдЧреЛрдВ рдореЗрдВ рддреЛрдбрд╝реЗрдВ;
  2. рд╡рд░реНрдЧ рдХреЗ рд╡рд┐рдХрд╛рд╕ рдХрд╛ рдкрд░рд┐рдгрд╛рдо рдЦреЛрдЬреЗрдВ;
  3. рдЪреМрдХреЛрдВ рд╕реЗ рдЙрдирдореЗрдВ рд╕реЗ рд╡рд░реНрдЧ рдХреЛ рдЦреЛрдЬреЗрдВред


рдпрджрд┐ рдЖрдк рд╡рд░реНрдЧ рдХреЗ рдирд┐рд░реНрдорд╛рдг рдХреЗ рд╕рдордп рд╡рд┐рдХрд╛рд╕ рдХреЗ рдкрд░рд┐рдгрд╛рдо рдХреА рддрд▓рд╛рд╢ рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рдпрд╣ 5 рдХреНрд╖реЗрддреНрд░реЛрдВ рдХреЗ рд╕рд╛рде рдПрдХ рд╕рдВрд░рдЪрдирд╛ рдХреЗ рд▓рд┐рдП рдкрд░реНрдпрд╛рдкреНрдд рд╣реИ:

  рд╡рд░реНрдЧ рд╡рд░реНрдЧ {
	 рдЖрдВрддрд░рд┐рдХ рд╕реНрдХреНрд╡рд╛рдпрд░ рдПрд▓рдмреА, рдЖрд░рдмреА, рдПрд▓рдЯреА, рдЖрд░рдЯреА, рд░реЗрд╕;
 } 


рдлрд┐рд░ рдПрдХ рдореЗрдВ рдЪрд╛рд░ рд╡рд░реНрдЧреЛрдВ рдХреЗ рд╕рдВрдпреЛрдЬрди рдХреЗ рд▓рд┐рдП рдПрд▓реНрдЧреЛрд░рд┐рдереНрдо рдирд┐рдореНрдирд╛рдиреБрд╕рд╛рд░ рд▓рд┐рдЦрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ:
 рд╕реНрдХреНрд╡рд╛рдпрд░ рдпреВрдирд╛рдЗрдЯ (рд╕реНрдХреНрд╡рд╛рдпрд░ рдП, рд╕реНрдХреНрд╡рд╛рдпрд░ рдП 1, рд╕реНрдХреНрд╡рд╛рдпрд░ рдП 2, рд╕реНрдХреНрд╡рд╛рдпрд░ рдП 3) {
	 рд╕реНрдХреНрд╡рд╛рдпрд░ рд░реЗрд╕ = рдлрд╛рдЗрдВрдбрдЗрдиреНрдбреЛрдПрдпрд░ (рдП 0, рдП 1, рдП 2, рдП 3);
	 if (рд░реЗрд╕! = null) рд╡рд╛рдкрд╕реА res;
 // рдкрд░рдд T = N / 4 рдкрд░
	 рд╕реНрдХреНрд╡рд╛рдпрд░ рдмреА 1 = рдпреВрдирд╛рдЗрдЯ (a0.RB, a1.LB, a0.RT, a1.LT )Res;
	 рд╡рд░реНрдЧ b3 = рдпреВрдирд╛рдЗрдЯ (a0.LT, a0.RT, a2.LB, a2.RB )Res;
	 рд╕реНрдХреНрд╡рд╛рдпрд░ b4 = рдпреВрдирд╛рдЗрдЯ (a0.RT, a1.LT, a2.RB, a3.LB )Res;
	 рд╡рд░реНрдЧ b5 = рдпреВрдирд╛рдЗрдЯ (a1.LT, a1.RT, a3.LB, a3.RB )Res;
	 рд╕реНрдХреНрд╡рд╛рдпрд░ b7 = рдпреВрдирд╛рдЗрдЯ (a2.RB, a3.LB, a2.RT, a3.LT )Res;
 // рдкрд░рдд T = N / 2 рдкрд░	
	 рд╕реНрдХреНрд╡рд╛рдпрд░ c0 = рдпреВрдирд╛рдЗрдЯ (a0.Res, b1, b3, b4) .Res;
	 рд╕реНрдХреНрд╡рд╛рдпрд░ c1 = рдпреВрдирд╛рдЗрдЯ (b1, a1.Res, b4, b5) .Res;
	 рд╕реНрдХреНрд╡рд╛рдпрд░ c2 = рдпреВрдирд╛рдЗрдЯ (b3, b4, a2.Res, b7) .Res;
	 рд╕реНрдХреНрд╡рд╛рдпрд░ c3 = рдпреВрдирд╛рдЗрдЯ (b4, b5, b7, a3.Res) .Res;
	 AddToDictionary (рдирдпрд╛ рд╕реНрдХреНрд╡рд╛рдпрд░ () {LB = a0, RB = a1, LT = a1, RT = a3, Res = Unite (c0, c1, c2, c3)});
 }


рджрд░рдЕрд╕рд▓, рдмрд╕ рдЗрддрдирд╛ рд╣реАред рдЫреЛрдбрд╝реА рдЫреЛрдЯреА рдЪреАрдЬреЗрдВ:

рдкреБрдирд░рд╛рд╡реГрддреНрддрд┐ рдХреЛ рд░реЛрдХреЗрдВред рдРрд╕рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рд╕рднреА 4 * 4 рд╡рд░реНрдЧ рдФрд░ 1 рдЪрд░рдг рдореЗрдВ рдЙрдирдХреЗ рд╡рд┐рдХрд╛рд╕ рдХреЗ рдкрд░рд┐рдгрд╛рдо рдХреЛ рд╢рдмреНрджрдХреЛрд╢ рдореЗрдВ рджрд░реНрдЬ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ (рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, рдХреЗрд╡рд▓ рдЗрд╕ рд╕реНрдерд╛рди рдкрд░ рдХрд╛рд░реНрдпрдХреНрд░рдо рдХреЛ рдЦреЗрд▓ рдХреЗ рдирд┐рдпрдореЛрдВ рдХреЗ рдЬреНрдЮрд╛рди рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИ)ред 2 * 2 рд╡рд░реНрдЧреЛрдВ рдХреЗ рд▓рд┐рдП, рдЖрдзреЗ рдЪрд░рдг рдХреЗ рд╡рд┐рдХрд╛рд╕ рдХреА рдЧрдгрдирд╛ рдирд╣реАрдВ рдХреА рдЬрд╛рддреА рд╣реИ, рдЙрдиреНрд╣реЗрдВ рдХреБрдЫ рд╡рд┐рд╢реЗрд╖ рддрд░реАрдХреЗ рд╕реЗ рдЪрд┐рд╣реНрдирд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред

рд╡рд┐рдХрд╛рд╕рд╡рд╛рджреА рдХрджрдореЛрдВ рдХреА рд╕рдВрдЦреНрдпрд╛ рдХреЛ рджреЛрдЧреБрдирд╛ рдХрд░реЗрдВред рдПрд▓реНрдЧреЛрд░рд┐рдереНрдо рдХреЗ рд╕рдВрджрд░реНрдн рдореЗрдВ, рдпрд╣ рдореВрд▓ рдХреНрд╖реЗрддреНрд░ рд╡рд╛рд▓реЗ рд╡рд░реНрдЧ рдХреЗ рдЖрдХрд╛рд░ рдХреЛ рджреЛрдЧреБрдирд╛ рдХрд░рдиреЗ рдХреЗ рд╕рдорд╛рди рд╣реИред рдпрджрд┐ рд╣рдо рдХреЗрдВрджреНрд░ рдХреЛ рд╡рд░реНрдЧ рдореЗрдВ рдЫреЛрдбрд╝рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рддреЛ рдЗрд╕рдореЗрдВ рд╢реВрдиреНрдп рдЬреЛрдбрд╝рдХрд░, рд╣рдо рдпрд╣ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ:

  рд╡рд░реНрдЧ рд╡рд┐рд╕реНрддрд╛рд░ (рд╡рд░реНрдЧ x) {
	 рд╕реНрдХреНрд╡рд╛рдпрд░ c0 = рдпреВрдирд╛рдЗрдЯ (рдЬрд╝реАрд░реЛ, рдЬрд╝реАрд░реЛ, рдЬрд╝реАрд░реЛ, x.LB);
	 рд╕реНрдХреНрд╡рд╛рдпрд░ c1 = рдпреВрдирд╛рдЗрдЯ (рдЬрд╝реАрд░реЛ, рдЬрд╝реАрд░реЛ, x.RB, рдЬрд╝реАрд░реЛ);
	 рд╕реНрдХреНрд╡рд╛рдпрд░ c2 = рдпреВрдирд╛рдЗрдЯ (рдЬрд╝реАрд░реЛ, x.LT, рдЬрд╝реАрд░реЛ, рдЬрд╝реАрд░реЛ);
	 рд╕реНрдХреНрд╡рд╛рдпрд░ c3 = рдпреВрдирд╛рдЗрдЯ (x.RT, Zero, Zero, Zero);
	 рд╡рд╛рдкрд╕реА рдпреВрдирд╛рдЗрдЯ (c0, c1, c2, c3);
 }

рдпрд╣рд╛рдБ рд╢реВрдиреНрдп рдПрдХ рд╡рд┐рд╢реЗрд╖ рд╡рд░реНрдЧ рд╣реИ, рд╕рднреА рднрд╛рдЧ рдФрд░ рдЬрд┐рд╕рдХреЗ рдкрд░рд┐рдгрд╛рдо рд╕реНрд╡рдпрдВ рдХреЗ рдмрд░рд╛рдмрд░ рд╣реИрдВред

рдпрд╛ рдЖрдк рдХреЗрд╡рд▓ рд╡реИрдХрд▓реНрдкрд┐рдХ рдХреНрд░рд┐рдпрд╛рдПрдБ x = Unite (x, Zero, Zero, Zero) рдФрд░ x = Unite (Zero, Zero, Zero, x) рдХреЛ рд╡реИрдХрд▓реНрдкрд┐рдХ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдореВрд▓ рд╡рд░реНрдЧ рдХреЗрдВрджреНрд░ рдореЗрдВ рдХрд╣реАрдВ рд╣реЛрдЧрд╛ред

рдПрдХ рд╢рдмреНрджрдХреЛрд╢ рдХреЛ рд▓рд╛рдЧреВ рдХрд░реЗрдВред рдпрд╣рд╛рдВ рдореБрдЭреЗ рдПрдХ рд╕реБрдВрджрд░ рд╕рдорд╛рдзрд╛рди рдирд╣реАрдВ рдорд┐рд▓рд╛: рдореБрдЭреЗ рдХреБрдВрдЬреА рджреНрд╡рд╛рд░рд╛ рд╡рд╕реНрддреБ рдХреА рдЦреЛрдЬ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рдЬреЛ рдЗрд╕ рд╡рд╕реНрддреБ рдХрд╛ 80% рд╣реИ (рдФрд░ рди рдХреЗрд╡рд▓ рд╢реЗрд╖ 20% рд╣реИ, рдмрд▓реНрдХрд┐ рд╡рд╕реНрддреБ рдХреЛ рднреА рд╕реНрд╡рдпрдВ рдЦреЛрдЬрдирд╛ рд╣реЛрдЧрд╛)ред рд╡рд┐рднрд┐рдиреНрди рдкреНрд░рдХрд╛рд░ рдХреЗ рд╕рдВрдЧреНрд░рд╣реЛрдВ рд╕реЗ рдпреБрдХреНрдд рд╣реЛрдиреЗ рдХреЗ рдмрд╛рдж, рдореИрдВрдиреЗ рдЕрдкрдирд╛ рд╣рд╛рде рд▓рд╣рд░рд╛рдпрд╛ рдФрд░ рдлреЛрд░рдЯреНрд░рд╛рди рдореЗрдВ рдЕрднрд┐рдирдп рдХрд┐рдпрд╛: рдкрд╛рдВрдЪ рдкреВрд░реНрдгрд╛рдВрдХ рд╕рд░рдгрд┐рдпреЛрдВ (рдПрд▓рдЯреА, рдЖрд░рдЯреА, рдПрд▓рдмреА, рдЖрд░рдмреА, рдЖрд░рдИрдПрд╕) рдХрд╛ рд╡рд░реНрдгрди рдХрд┐рдпрд╛ рдФрд░ рдХрд╣рд╛ рдХрд┐ рд╡рд░реНрдЧ рдЗрди рд╕рд░рдгрд┐рдпреЛрдВ рдореЗрдВ рдкреВрд░реНрдгрд╛рдВрдХ-рд╕реВрдЪрдХрд╛рдВрдХ рджреНрд╡рд╛рд░рд╛ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред 0 рд╕реЗ 15 рддрдХ рдХреЗ рд╕реВрдЪрдХрд╛рдВрдХ 2 * 2 рд╡рд░реНрдЧреЛрдВ рдХреЗ рд▓рд┐рдП рдЖрд░рдХреНрд╖рд┐рдд рд╣реИрдВред рдЫрдареА рд╕рд░рдгреА, рджреЛ рдмрд╛рд░ рд▓рдВрдмрд╛рдИ, рд╣реИрд╢рд┐рдВрдЧ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред

рдЖрдкрдХреЛ рдлрд╝реАрд▓реНрдб рд╕реЗрдЯ рдХрд░рдиреЗ рдФрд░ рдкрд░рд┐рдгрд╛рдо рдкрдврд╝рдиреЗ рдХреА рднреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ - рд▓реЗрдХрд┐рди рдпрд╣ рддрдХрдиреАрдХ рдХрд╛ рдорд╛рдорд▓рд╛ рд╣реИред рд╣рд╛рд▓рд╛рдБрдХрд┐ рдЖрдкрдХреЛ рдкрдврд╝рдиреЗ рдореЗрдВ рд╕рд╛рд╡рдзрд╛рдиреА рдмрд░рддрдиреЗ рдХреА рдЬрд╝рд░реВрд░рдд рд╣реИ: рдпрджрд┐ рдЖрдк 63 рдмрд╛рд░ рд╕реЗ рдЕрдзрд┐рдХ рдХрд╛ рд╡рд┐рд╕реНрддрд╛рд░ рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рдлрд╝реАрд▓реНрдб рдХреЗ рдХрд┐рдирд╛рд░реЗ рдХреА рд▓рдВрдмрд╛рдИ рдЕрдм 64 рдмрд┐рдЯ рдореЗрдВ рдлрд┐рдЯ рдирд╣реАрдВ рд╣реЛрдЧреАред

рдореИрдВрдиреЗ рдРрд╕реЗ рдирд┐рд░реНрдорд╛рдгреЛрдВ рдкрд░ рдПрд▓реНрдЧреЛрд░рд┐рдереНрдо рдХрд╛ рдкрд░реАрдХреНрд╖рдг рдХрд┐рдпрд╛:

"рдХрдЪрд░рд╛ рдбрд┐рд╕реНрдкреЗрдВрд╕рд░ред"


рдпрд╣ рд╕реА / 2 рдХреА рдЧрддрд┐ рд╕реЗ рдЪрд▓рддрд╛ рд╣реИ, рдЗрд╕рдХреЗ рдкреАрдЫреЗ рдмрд╣реБрдд рд╕рд╛рд░рд╛ рдорд▓рдмрд╛ рдЫреЛрдбрд╝ рджреЗрддрд╛ рд╣реИ рдФрд░ рд╣рд░ 240 рдХрджрдо рдкрд░ рдПрдХ рдЬреЛрдбрд╝реА рдЧреНрд▓рд╛рдЗрдбрд░ рдЫреЛрдбрд╝рддрд╛ рд╣реИред рдПрдХ рдЯреНрд░рд┐рд▓рд┐рдпрди рдкреАрдврд╝реА (рдЕрдзрд┐рдХ рд╕рдЯреАрдХ, 2 ^ 40) рдХреА рдЧрдгрдирд╛ 0.73 рд╕реЗрдХрдВрдб рдореЗрдВ рдХреА рдЧрдИред рд▓рдЧрднрдЧ 120,000 рд╡рд░реНрдЧ (рдкреНрд░рддреНрдпреЗрдХ рджреЛрд╣рд░реАрдХрд░рдг рдХреЗ рд▓рд┐рдП 1,500) рд╢рдмреНрджрдХреЛрд╖ рдореЗрдВ рдЧрд┐рд░ рдЧрдП, рдХреНрд╖реЗрддреНрд░ рдкрд░ рдЬреАрд╡рд┐рдд рдХреЛрд╢рд┐рдХрд╛рдУрдВ рдХреА рд╕рдВрдЦреНрдпрд╛ 600 рдмрд┐рд▓рд┐рдпрди рд╣реИред
рдкрд░рд┐рдгрд╛рдореА рдлрд╝реАрд▓реНрдб рдХрд╛ рдПрдХ рдЯреБрдХрдбрд╝рд╛ рдЗрд╕ рддрд░рд╣ рджрд┐рдЦрддрд╛ рд╣реИ:
(2001x2001, 82 KB)

рдЧреНрд▓рд╛рдЗрдбрд░ рдмрдВрджреВрдХреЗрдВ рдХреА рд▓рдбрд╝рд╛рдИ

рджреЛ рдЧреНрд▓рд╛рдЗрдбрд░ рдмрдВрджреВрдХреЗрдВ рдПрдХ рджреВрд╕рд░реЗ рд╕реЗ 800 рдХреЛрд╢рд┐рдХрд╛рдУрдВ рдХреА рджреВрд░реА рдкрд░ рд╕реНрдерд┐рдд рд╣реИрдВ, рдЙрдирдХреЗ рджреНрд╡рд╛рд░рд╛ рдЫреЛрдбрд╝реА рдЧрдИ рдзрд╛рд░рд╛рдПрдВ рдЯрдХрд░рд╛рддреА рд╣реИрдВ:
(рдЯреА = 2048, 804x504, 11 рдХреЗрдмреА)
рдЯрдХреНрдХрд░ рдХреЗ рддреБрд░рдВрдд рдмрд╛рдж, рдЧреНрд▓рд╛рдЗрдбрд░реНрд╕ рдорд▓рдмреЗ рдХреЗ рдвреЗрд░ рд╕реЗ рдмрд╛рд╣рд░ рдирд┐рдХрд▓рддреЗ рд╣реИрдВ, рдЬреЛ рдкрд╣рд▓реЗ рдПрдХ рдмрдВрджреВрдХ рдХреЛ рдирд╖реНрдЯ рдХрд░рддреЗ рд╣реИрдВ:
(T = 4096, 1098x1024, 30 Kb)
рдФрд░ рдлрд┐рд░ рджреВрд╕рд░рд╛ (рдЬрд┐рд╕рдХреЗ рдмрд╛рдж рд╡рд┐рдХрд╛рд╕ рдЬрд▓реНрджреА рд╕рдорд╛рдкреНрдд рд╣реЛ рдЬрд╛рддрд╛ рд╣реИ):
(T = 8192, 3146x3252, 190 Kb)
рдЧрд┐рдирддреА рдХрд╛ рд╕рдордп 0.84 рд╕реЗрдХрдВрдб рд╣реИ, рд╢рдмреНрджрдХреЛрд╢ рдореЗрдВ рддрддреНрд╡реЛрдВ рдХреА рд╕рдВрдЦреНрдпрд╛ рд▓рдЧрднрдЧ 270,000 рд╣реИред

"рд░реИрдВрдбрдо рдлрд┐рд▓рд┐рдВрдЧ"

рдлрд╝реАрд▓реНрдб 1024 * 1024 рдмреЗрддрд░рддреАрдм рдврдВрдЧ рд╕реЗ 1/3 рдХреЗ рдШрдирддреНрд╡ рд╡рд╛рд▓реА рдХреЛрд╢рд┐рдХрд╛рдУрдВ рд╕реЗ рднрд░рд╛ рд╣реЛрддрд╛ рд╣реИред рдПрд▓реНрдЧреЛрд░рд┐рдереНрдо рдХреЗ рд▓рд┐рдП, рдпрд╣ рд╕рдмрд╕реЗ рдХрдард┐рди рдорд╛рдорд▓рд╛ рд╣реИ: рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдзреАрд░реЗ-рдзреАрд░реЗ рд╕реНрдерд┐рд░ рд╣реЛ рдЬрд╛рддрд╛ рд╣реИ, рдФрд░ рд╡рд░реНрдЧ рддреБрд░рдВрдд рджреЛрд╣рд░рд╛рдирд╛ рд╢реБрд░реВ рдирд╣реАрдВ рдХрд░рддреЗ рд╣реИрдВред
рдпрд╣рд╛рдБ рд╡рд┐рдиреНрдпрд╛рд╕ рдореЗрдВ рд╕реЗ рдПрдХ рдХреЗ рд╡рд┐рдХрд╛рд╕ рдХрд╛ рдПрдХ рдЙрджрд╛рд╣рд░рдг рд╣реИ:
(T = 0, 1024x1024, 300 Kb)
(T = 1024, 1724x1509, 147 Kb)
(рдЯреА = 2048, 2492x2021, 177 Kb)
(рдЯреА = 4096, 4028x3045, 300 Kb)
(рдЯреА = 8192, 7100x5093, 711 Kb)
рдорддрдЧрдгрдирд╛ рдХрд╛ рд╕рдордп 14 рд╕реЗрдХрдВрдб рд╣реИ, рд╢рдмреНрджрдХреЛрд╢ рдореЗрдВ рддрддреНрд╡реЛрдВ рдХреА рд╕рдВрдЦреНрдпрд╛ рд▓рдЧрднрдЧ 15 рдорд┐рд▓рд┐рдпрди рд╣реИ, рд▓рдЧрднрдЧ 35,000 рдЕрдВрдХ рдореИрджрд╛рди рдкрд░ рдмрдиреЗ рд╣реБрдП рд╣реИрдВред

рдЗрд╕ рдПрд▓реНрдЧреЛрд░рд┐рдереНрдо рдореЗрдВ рдХреНрдпрд╛ рдЕрд╕рд╛рдорд╛рдиреНрдп рд╣реИ? рдореИрдВ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдиреЛрдЯ рдХрд░реВрдВрдЧрд╛:

  1. рд▓рдЧрднрдЧ рдкреНрд░рдпрд╛рд╕ рдХреЗ рдмрд┐рдирд╛, рд╣рдореЗрдВ рдПрдХ рдРрд╕рд╛ рдХрд╛рд░реНрдпрдХреНрд░рдо рдорд┐рд▓рд╛ рдЬреЛ рдЦрд╛рд▓реА рдХреНрд╖реЗрддреНрд░реЛрдВ рдХреЛ рд╕рдХреНрд░рд┐рдп рд▓реЛрдЧреЛрдВ рд╕реЗ рдЕрд▓рдЧ рдХрд░ рд╕рдХрддрд╛ рд╣реИ, рд╕рдХреНрд░рд┐рдп рдХреНрд╖реЗрддреНрд░реЛрдВ рдХреЛ рдЯреНрд░реИрдХ рдХрд░ рд╕рдХрддрд╛ рд╣реИ рдФрд░ рдЙрдирдХреА рд╕рд╣рднрд╛рдЧрд┐рддрд╛ рдХрд╛ рдХрд╛рдо рдХрд░ рд╕рдХрддрд╛ рд╣реИред рдпрджрд┐ рд╣рдордиреЗ рдХрдИ рдЧрддрд┐рд╢реАрд▓ рджреЛ-рдЖрдпрд╛рдореА рд╕рд░рдгрд┐рдпреЛрдВ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдЗрд╕ рддрд░рд╣ рдХреЗ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдХреЛ рд╕реАрдзреЗ рд▓рд┐рдЦрд╛, рддреЛ рдХрд╛рд░реНрдпрдХреНрд░рдо рдмрд╣реБрдд рдЕрдзрд┐рдХ рдЬрдЯрд┐рд▓ рд╣реЛрдЧрд╛ред
  2. рдПрд▓реНрдЧреЛрд░рд┐рдереНрдо рди рдХреЗрд╡рд▓ рдЯреА рдЪрд░рдгреЛрдВ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдХреНрд╖реЗрддреНрд░ рдХреА рд╕реНрдерд┐рддрд┐ рдХреА рдЧрдгрдирд╛ рдХрд░рддрд╛ рд╣реИ - рдпрд╣ рдкреВрд░реЗ рд╡рд┐рдХрд╛рд╕ рдХреЛ рдпрд╛рдж рдХрд░рддрд╛ рд╣реИред рдЕрдкрдиреЗ рдХрд╛рдо рдХреЗ рдкрд░рд┐рдгрд╛рдо рд╕реЗ, рдХреЛрдИ рднреА рдЖрд╕рд╛рдиреА рд╕реЗ рдХрд┐рд╕реА рднреА рдЕрдВрддрд░рд╛рд▓ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рд░рд╛рдЬреНрдп рдХреЛ рдирд┐рдХрд╛рд▓ рд╕рдХрддрд╛ рд╣реИ T_k = 2 ^ k (рдПрдХ рд╕рдордп рдХреЗ рдмрд╛рдж рдХреНрд╖реЗрддреНрд░ рдХреА рд╕реНрдерд┐рддрд┐ рдХреИрд╕реЗ рдкреНрд░рд╛рдкреНрдд рдХрд░реЗрдВ рдЬреЛ рджреЛ рдХреА рд╢рдХреНрддрд┐ рдирд╣реАрдВ рд╣реИ рдПрдХ рдЕрд▓рдЧ рдкреНрд░рд╢реНрди рд╣реИ)ред рдПрдХ рд╣реА рд╕рдордп рдореЗрдВ, рдкреВрд░реЗ рд╡рд┐рдХрд╛рд╕ рдХреЛ рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ рдкреИрдХ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ - рдлрд┐рд░ рд╕реЗ, рд╡рд┐рд╢реЗрд╖ рдкреНрд░рдпрд╛рд╕реЛрдВ рдХреЗ рдмрд┐рдирд╛: "^ рдХрдЪрд░рд╛ рдЯреНрд░рдХ" рдХреА 40 рдкреАрдврд╝реА 3 рдПрдордмреА рдореЗрдВ рдлрд┐рдЯ рд╣реЛрддреА рд╣реИрдВред
  3. рдЗрд╕ рддрдереНрдп рдХреЗ рдмрд╛рд╡рдЬреВрдж рдХрд┐ рд╢рдмреНрджрдХреЛрд╢ рдкреНрд░рд╛рд░рдВрднрд┐рдХ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдХреЗ рдЕрдиреБрд╕рд╛рд░ рдмрдирд╛рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдЗрд╕рдХреА рд╕рд╛рдордЧреНрд░реА рдЗрд╕ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдкрд░ рдирд┐рд░реНрднрд░ рдирд╣реАрдВ рдХрд░рддреА рд╣реИред рдХреБрдЫ рдЧрдгрдирд╛ рд╕рдорд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж, рд╣рдо рдирдП рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдХреЗ рд▓рд┐рдП рдПрдХ рд╣реА рд╢рдмреНрджрдХреЛрд╢ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдФрд░ рднрд╛рдЧреНрдп рдХреЗ рд╕рд╛рде, рдмрд╣реБрдд рд╕рдордп рдмрдЪрд╛ рд╕рдХрддреЗ рд╣реИрдВ (рд╣рд╛рд▓рд╛рдВрдХрд┐ рдореИрдВрдиреЗ рдпрд╣ рдХреЛрд╢рд┐рд╢ рдирд╣реАрдВ рдХреА рд╣реИ)ред
  4. рдФрдкрдЪрд╛рд░рд┐рдХ рд░реВрдк рд╕реЗ, рд╡рд┐рдорд╛рди рдкрд░ рд╡рд┐рдиреНрдпрд╛рд╕ 4-рдкреЗрдбрд╝реЛрдВ рдХреЗ рд░реВрдк рдореЗрдВ рдкреНрд░рд╕реНрддреБрдд рдХрд┐рдП рдЬрд╛рддреЗ рд╣реИрдВред рд▓реЗрдХрд┐рди рдкрдбрд╝реЛрд╕реА рд╢рд╛рдЦрд╛рдУрдВ рдХреЗ рдЪрд░рдо рдмрд┐рдВрджреБрдУрдВ рдХреЗ рдмреАрдЪ рдмрд╛рддрдЪреАрдд рдХрд╛ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рд╣рдо рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рдЗрди рдмрд┐рдВрджреБрдУрдВ рдкрд░ рдиреАрдЪреЗ рдирд╣реАрдВ рдЬрд╛рддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдХреЗрд╡рд▓ 1-2 рдХрджрдо рдиреАрдЪреЗ рдЬрд╛рддреЗ рд╣реИрдВ, рдЬрд┐рд╕рдХреЗ рдмрд╛рдж рд╣рдо рдЕрдкрдиреА рд╕рдорд╕реНрдпрд╛ рдХреЛ рд╣рд▓ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреБрдХреНрдд рдПрдХ рдкреЗрдбрд╝ рдХреА рддрд▓рд╛рд╢ / рдирд┐рд░реНрдорд╛рдг рдХрд░рддреЗ рд╣реИрдВред рд╣рд╛рд▓рд╛рдБрдХрд┐, рдпрд╣рд╛рдБ рдХреБрдЫ рднреА рдЕрд╕рд╛рдорд╛рдиреНрдп рдирд╣реАрдВ рд╣реИ - рд╕рд┐рд░реНрдл рдЗрд╕рд▓рд┐рдП рдХрд┐ рд╣рдо рдирдП рдиреЛрдб рдХреЗ рдирд┐рд░реНрдорд╛рдг рдХреЗ рдХрд╛рд░рдг рд╕рдордп рдирд╣реАрдВ рдЧрдВрд╡рд╛рддреЗ рд╣реИрдВ, рдмрд▓реНрдХрд┐ рдЗрд╕рдХреЗ рд╡рд┐рдкрд░реАрддред
  5. рдПрд▓реНрдЧреЛрд░рд┐рдереНрдо рдореЗрдВ, рди рддреЛ "рдкрд░рдорд╛рдгреБ" рдХреЛрд╢рд┐рдХрд╛рдУрдВ рдХреЗ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдЖрдХрд╛рд░ рдФрд░ рди рд╣реА рдЙрдирдХреЗ рд░рд╛рдЬреНрдпреЛрдВ рдХреА рд╕рдВрдЦреНрдпрд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд╣реАрдВ рднреА рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдиреНрдпреВрдирддрдо рд╕реНрддрд░ рдЬреЛ рдкреБрдирд░рд╛рд╡реГрддреНрддрд┐ рдХреЛ рдХрдо рдХрд░ рд╕рдХрддрд╛ рд╣реИ, рд╡рд╣ 16 рд░рд╛рдЬреНрдпреЛрдВ рд╡рд╛рд▓реА рдХреЛрд╢рд┐рдХрд╛рдПрдВ рд╣реИрдВ, рдЬрд┐рдиреНрд╣реЗрдВ рд╣рдо 2 * 2 рд╡рд░реНрдЧ рдХреЗ рд░реВрдк рдореЗрдВ рджреЗрдЦрддреЗ рд╣реИрдВред рдЗрд╕ рд╕реНрддрд░ рдкрд░ рдЕрдВрддрд░рд┐рдХреНрд╖-рд╕рдордп (рдПрд▓реНрдЧреЛрд░рд┐рдереНрдо рдХреЗ рд▓рд┐рдП) рдПрдХ рдЪреЗрд╣рд░рд╛-рдХреЗрдВрджреНрд░рд┐рдд рдЬрд╛рд▓реА (рдПрдХ рддреАрди-рдЖрдпрд╛рдореА рд╢рддрд░рдВрдЬрдмреЛрд░реНрдб рдЬрд┐рд╕рдореЗрдВ рд╕реЗ рдХреЗрд╡рд▓ рдХрд╛рд▓реА рдХреЛрд╢рд┐рдХрд╛рдУрдВ рдХреЛ рд▓рд┐рдпрд╛ рдЧрдпрд╛ рдерд╛) рдЬреИрд╕рд╛ рджрд┐рдЦрддрд╛ рд╣реИред 16 рдХреА рд╕рдВрдЦреНрдпрд╛ рд╣рдордиреЗ рдХреЙрдирд╡реЗ рдХреЗ рдирд┐рдпрдореЛрдВ рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рдЦреБрдж рдХрд╛ рдЖрд╡рд┐рд╖реНрдХрд╛рд░ рдХрд┐рдпрд╛ред рдПрд▓реНрдЧреЛрд░рд┐рдереНрдо рдореЗрдВ, рдпрд╣ рдХреБрдЫ рднреА рд╣реЛ рд╕рдХрддрд╛ рд╣реИ, рдореБрдЦреНрдп рдХреЛрдб рдЗрд╕ рдкрд░ рдирд┐рд░реНрднрд░ рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ

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


All Articles