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

рдШрд╕реАрдЯрдирд╛ рдорд╛рд░реНрдЧ
рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдХрд╛рд░реНрдб рдлреЗрд░рдмрджрд▓ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╢рд╛рдВрдд рддрд░реАрдХреЗ рд╣реИрдВ, рд░рд╛рдЗрдлрд▓ рдлреЗрд░рдмрджрд▓ред

рдореИрдВ рдирд╣реАрдВ рдЬрд╛рдирддрд╛ рдХрд┐ рдХреИрд╕реЗ, рдФрд░ рдХрд╛рд░реНрдбрдмреЛрд░реНрдб рдХрд╛рд░реНрдб рдХреЛ рдЗрд╕ рддрд░рд╣ рд╕реЗ рдлреЗрд░рдмрджрд▓ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдореИрдВ рдПрдХ рд╕рд░рд▓ рддрд░реАрдХреЗ рд╕реЗ рдлреЗрд░рдмрджрд▓ рдХрд░рддрд╛ рд╣реВрдВ, рдпрд╣ рдХреБрдЫ рдЗрд╕ рддрд░рд╣ рджрд┐рдЦрддрд╛ рд╣реИ:

рдкрд╣рд▓реЗ, рдореИрдВ рднрд╛рдЧ рдХреЛ рдбреЗрдХ рд╕реЗ рдЕрд▓рдЧ рдХрд░рддрд╛ рд╣реВрдВ, рдлрд┐рд░ рдореИрдВ рдЗрд╕ рд╣рд┐рд╕реНрд╕реЗ рдХреЗ рд╣рд┐рд╕реНрд╕реЗ рдХреЛ рджреВрд╕рд░реА рддрд░рдл рдлреЗрдВрдХ рджреЗрддрд╛ рд╣реВрдВ, рдФрд░ рдлрд┐рд░ рдореИрдВ рд╢реЗрд╖ рд╣рд┐рд╕реНрд╕реЗ рдХреА рд░рд┐рдкреЛрд░реНрдЯ рдХрд░рддрд╛ рд╣реВрдВред рдореЗрд░реА рдЯрд┐рдкреНрдкрдгрд┐рдпреЛрдВ рдХреЗ рдЕрдиреБрд╕рд╛рд░, рд▓реЛрдЧ рдХрд╛рд░реНрдб рдХреЛ рдЗрд╕ рддрд░рд╣ рд╕реЗ рдлреЗрд░рдмрджрд▓ рдХрд░рддреЗ рд╣реИрдВ рдпрд╛ рдЙрд╕рдХреЗ рдХрд░реАрдм рд╣реЛрддреЗ рд╣реИрдВред рд╕рд╛рдорд╛рдиреНрдп рддреМрд░ рдкрд░, рдЗрд╕реЗ рдмрдбрд╝реА рд╕рдВрдЦреНрдпрд╛ рдореЗрдВ рднрд╛рдЧреЛрдВ рдореЗрдВ рд╡рд┐рднрд╛рдЬрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдпреЗ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рд╡рд┐рд╡рд░рдг рд╣реИрдВред рд▓реЗрдЦ рдореЗрдВ рд╣рдо рдЗрд╕ рдлреЗрд░рдмрджрд▓ рд╡рд┐рдзрд┐ рдХрд╛ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдХрд░реЗрдВрдЧреЗред
рдпрд╛рджреГрдЪреНрдЫрд┐рдХ рдХрд╛рд░реНрдб рд▓реЗрдЖрдЙрдЯ рдХреНрдпрд╛ рд╣реИ?
рдореЗрд░реЗ рд▓рд┐рдП рдкрд╣рд▓реА рдмрд╛рдд рдпрд╣ рдереА рдХрд┐ рдпрд╣ рдПрдХ рдЕрдЪреНрдЫрд╛ рд▓реЗрдЖрдЙрдЯ рд╣реИ, рдХрд┐рд╕реА рднреА рдХрд╛рд░реНрдб рдХреЗ i-th рд╕реНрдерд╛рди рдкрд░ рд╣реЛрдиреЗ рдХреА рдЙрддрдиреА рд╣реА рд╕рдВрднрд╛рд╡рдирд╛ рд╣реЛ рд╕рдХрддреА рд╣реИред
рд▓реЗрдХрд┐рди рдпрд╣ рдкрд░реНрдпрд╛рдкреНрдд рдирд╣реАрдВ рд╣реИред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдпрджрд┐ рдЖрдк рдбреЗрдХ рдХреЛ рдХрд╛рдЯрддреЗ рд╣реИрдВ - рдЗрд╕реЗ рдпрд╛рджреГрдЪреНрдЫрд┐рдХ рд╕реНрдерд╛рди рдкрд░ рджреЛ рдореЗрдВ рд╡рд┐рднрд╛рдЬрд┐рдд рдХрд░рддреЗ рд╣реИрдВ рдФрд░ рдЙрдиреНрд╣реЗрдВ рд╕реНрд╡реИрдк рдХрд░рддреЗ рд╣реИрдВ - рддреЛ рдкрд╣рд▓рд╛ рдХрд╛рд░реНрдб рдХреЛрдИ рднреА рдореМрдХрд╛ рд╣реЛ рд╕рдХрддрд╛ рд╣реИред рд▓реЗрдХрд┐рди рдПрдХ рд╣реА рд╕рдордп рдореЗрдВ, рдпрд╣ рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рдПрдХ рдмреБрд░рд╛ рд▓реЗрдЖрдЙрдЯ рд╣реИ: рдкреНрд░рддреНрдпреЗрдХ рдХрд╛рд░реНрдб рдХреЗ рдмрд╛рдж, рдХреБрдЫ рдХреЛ рдЫреЛрдбрд╝рдХрд░, рд╡рд╣реА рдХрд╛рд░реНрдб "рдХрдЯ" рд╕реЗ рдкрд╣рд▓реЗ рдЙрд╕рдХреЗ рдмрд╛рдж рд▓реЗрдЯ рдЬрд╛рдПрдЧрд╛ред рдпрд╣реА рд╣реИ, рдЦрд┐рд▓рд╛рдбрд╝рд┐рдпреЛрдВ рдХреЛ "рд╕рд╣рд╕рдВрдмрджреНрдз" рдХрд╛рд░реНрдб рдкреНрд░рд╛рдкреНрдд рд╣реЛрдВрдЧреЗред рдореВрд░реНрдЦ рдХреЗ рдорд╛рдорд▓реЗ рдореЗрдВ, рдПрдХ рдХреЛ рдкреАрдЯрд╛ рдЬрд╛рдПрдЧрд╛, рдФрд░ рджреВрд╕рд░реЗ рдХреЛ рдкреАрдЯрд╛ рдЬрд╛рдПрдЧрд╛, рдФрд░ рдпрд╣ рдЖрдХрд╕реНрдорд┐рдХ рдирд╣реАрдВ рд╣реЛрдЧрд╛ред
рдПрдХ рдЕрдЪреНрдЫрд╛ рд▓реЗрдЖрдЙрдЯ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдФрд░ рджреГрд╖реНрдЯрд┐рдХреЛрдг рдпрд╣ рд╣реИ рдХрд┐ i + 1 рдЬрдЧрд╣ рдкрд░ i-th рдЬрдЧрд╣ рдкрд░ рдХрд╛рд░реНрдб рд╕реЗ рд╕реНрд╡рддрдВрддреНрд░ рдХрд╛рд░реНрдб рд╣реИред рдЖрдк рдЗрд╕реЗ рдЗрд╕ рддрд░рд╣ рд╕реЗ рдХрд▓реНрдкрдирд╛ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ: рдпрджрд┐ рдЖрдк рдбреЗрдХ рдХреЗ рд╢реАрд░реНрд╖ рдХрд╛рд░реНрдб рдХреЛ рджреЗрдЦрддреЗ рд╣реИрдВ, рддреЛ рдЖрдк рдЕрдиреБрдорд╛рди рдирд╣реАрдВ рд▓рдЧрд╛ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ рдЖрдЧреЗ рдХреМрди рд╕рд╛ рдХрд╛рд░реНрдб рд╣реЛрдЧрд╛ред
рдЗрд╕ рджреГрд╖реНрдЯрд┐рдХреЛрдг рдореЗрдВ рдРрд╕реА рд╕рдорд╕реНрдпрд╛рдПрдВ рднреА рд╣реЛ рд╕рдХрддреА рд╣реИрдВ рдЬреЛ рдмрдбрд╝реЗ рд╕рдВрдпреБрдХреНрдд рд╡рд┐рддрд░рдг рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░рдХреЗ рд╣рд▓ рдХреА рдЬрд╛рддреА рд╣реИрдВ, рд▓реЗрдХрд┐рди рд╡рд░реНрддрдорд╛рди рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдХреЗ рд▓рд┐рдП рдпрд╣ рд╣рдорд╛рд░реЗ рд▓рд┐рдП рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдЙрдкрдпреБрдХреНрдд рд╣реЛрдЧрд╛ред
рд▓реЗрдЖрдЙрдЯ рдХреА "рдЕрдЪреНрдЫрд╛рдИ" рдХреЛ рдХреИрд╕реЗ рдорд╛рдкреЗрдВ
рд╣рдордиреЗ рдкрд┐рдЫрд▓реЗ рдЧреЗрдо рд╕реЗ рдмрдЪрд╛ рд╣реБрдЖ рдбреЗрдХ рд▓рд┐рдпрд╛ред рд╣рдо рдХреНрд░рдо рдореЗрдВ рд╕рднреА рдХрд╛рд░реНрдб рд╕рдВрдЦреНрдпрд╛ред рдЦрд░рд╛рдм рд╕реНрдерд┐рддрд┐ рддрдм рд╣реЛрддреА рд╣реИ рдЬрдм рдирдВрдмрд░ i рдХреЗ рд╕рд╛рде рдХрд╛рд░реНрдб рдХреЗ рдмрд╛рдж рдХрд┐рд╕реА рд╕реНрдерд╛рди рдкрд░ рдлреЗрд░рдмрджрд▓ рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж рдирдВрдмрд░ i + 1 рд╡рд╛рд▓рд╛ рдХрд╛рд░реНрдб рд╣реЛрддрд╛ рд╣реИред рдЗрд╕рд▓рд┐рдП, рд╣рдо рдЙрди рдХрд╛рд░реНрдбреЛрдВ рдХреЗ рдЕрдиреБрдкрд╛рдд рдХреЛ рдорд╛рдкреЗрдВрдЧреЗ рдЬреЛ рдлреЗрд░рдмрджрд▓ рдХреЗ рдмрд╛рдж рдХреНрд░рдо рдореЗрдВ рд╣реИрдВред
def next_stat(a): c_next = 0 c_total = 0 for i in range(len(a)-1): c_total += 1 c_next += a[i] == (a[i+1]-1) return c_next * 1.0 / c_total
рдпрд╣ рд╕реНрдкрд╖реНрдЯ рд╣реИ рдХрд┐ рдпрд╣рд╛рдВ рддрдХ тАЛтАЛрдХрд┐ рдПрдХ рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ рдлреЗрд░рдмрджрд▓ рдбреЗрдХ рдореЗрдВ, рдХреБрдЫ рдХрд╛рд░реНрдб рдпрд╛рджреГрдЪреНрдЫрд┐рдХ рд░реВрдк рд╕реЗ рдХреНрд░рдо рдореЗрдВ рдЧрд┐рд░реЗрдВрдЧреЗред рдЙрдирдХрд╛ рд╣рд┐рд╕реНрд╕рд╛ рдФрд╕рдд 1 / (n-1) рдкрд░ рд╣реЛрдЧрд╛, рдЬрд╣рд╛рдВ n рдбреЗрдХ рдореЗрдВ рдХрд╛рд░реНрдб рдХреА рд╕рдВрдЦреНрдпрд╛ рд╣реИред
рдкреНрд░рдорд╛рдгE (рд░рд╛рд╢рд┐ ($ a i = a {i + 1} $ i = 0 .. (n-1)) / (n-1)) = sum (E ($ a i = a i i 1) $ ) рдХреЗ рд▓рд┐рдП рдореИрдВ = 0 .. (рдПрди -1)) / (рдПрди -1) - рдЪрдЯрд╛рдИ рдХреА рд░реИрдЦрд┐рдХрддрд╛ рдХреЗ рдХрд╛рд░рдгред рдЙрдореНрдореАрджреЛрдВред
рдФрд░ рдЪреВрдВрдХрд┐ E ($ a i = a {i + 1} $) = 1 / (n-1), рддреЛ рдпрд╣ рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐ = (n-1) * 1 / (n-1) / (n-1) = 1 / (рдПрди -1)
рдкрд░рд┐рдгрд╛рдо
52 рдкреБрдирд░рд╛рд╡реГрддреНрддрд┐рдпреЛрдВ рдХреА рд╕рдВрдЦреНрдпрд╛ рдХреЗ рдЖрдзрд╛рд░ рдкрд░, рд╣рдо 52 рдХрд╛рд░реНрдбреЛрдВ рдХреЗ рдбреЗрдХ рдХреЗ рд▓рд┐рдП рд▓рдЧрд╛рддрд╛рд░ рдХрд╛рд░реНрдб рдХреА рд╕рдВрднрд╛рд╡рдирд╛ рдХреА рдЧрдгрдирд╛ рдХрд░рддреЗ рд╣реИрдВред

рдЧреНрд░рд╛рдл рд╕реЗ рдкрддрд╛ рдЪрд▓рддрд╛ рд╣реИ рдХрд┐ рд╕реИрдХрдбрд╝реЛрдВ рдкреБрдирд░рд╛рд╡реГрддреНрддрд┐рдпреЛрдВ рдХреЗ рдмрд╛рдж рднреА, рдирд┐рд░рдВрддрд░ рдХрд╛рд░реНрдб рдХреА рд╕рдВрднрд╛рд╡рдирд╛ рдЖрджрд░реНрд╢ рд╕рдВрднрд╛рд╡рдирд╛ рд╕реЗ рд▓рдЧрднрдЧ рджреЛ рдЧреБрдирд╛ рдЕрдзрд┐рдХ рд╣реИред
рд╕рд╛рдЬрд┐рд╢ рд░рдЪрдиреЗ рдХрд╛ рдХреЛрдб import random def two_split_shuffle(a): s1 = random.randint(1,len(a)-1) s2 = random.randint(1,len(a)-1) s_min = min(s1, s2) s_max = max(s1, s2) p1 = a[:s_min] p2 = a[s_min:s_max] p3 = a[s_max:] return p3 + p2 + p1 def shuffle_n(a, f, n): for _ in range(n): a = f(a) return a def next_stat(a): c_next = 0 c_total = 0 for i in range(len(a)-1): c_total += 1 c_next += a[i] == (a[i+1]-1) return c_next * 1.0 / c_total def expected(f, n = 100): s = 0 for _ in range(n): s += f() return s / n def get_expected_next_stat(shuf, n, cards): return expected(lambda: next_stat(shuffle_n(range(cards), shuf, n))) cards = 52 x = range(100) y = map(lambda i: get_expected_next_stat(two_split_shuffle, i, cards), x) import matplotlib.pyplot as plt %matplotlib inline plt.figure(figsize=(12,8)) plt.plot(x, y, label = u' 3') plt.plot(x, [1./(cards-1)] * len(x), label = u' ') plt.grid() plt.legend()
рд╕рд╛рдорд╛рдиреНрдп рддреМрд░ рдкрд░, рд╣рдо рдорд╛рди рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ 60 рдкреБрдирд░рд╛рд╡реГрддреНрддрд┐рдпрд╛рдБ рдЗрд╖реНрдЯрддрдо рд░рд╛рд╢рд┐ рд╣реИрдВ, рдХрдо рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рдЦрд░рд╛рдм рд╣реИред рдореИрдВ 30 рд╕реЗрдХрдВрдб рдореЗрдВ рд▓рдЧрднрдЧ 16-17 рдкреБрдирд░рд╛рд╡реГрддреНрддрд┐рдпреЛрдВ рдХреЛ рдХрд░рддрд╛ рд╣реВрдВред рдЗрд╕рдХрд╛ рдорддрд▓рдм рд╣реИ рдХрд┐ рдПрдХ рд╕рд╛рдорд╛рдиреНрдп рдлреЗрд░рдмрджрд▓ рдореЗрдВ рд▓рдЧрднрдЧ рджреЛ рдорд┐рдирдЯ рд▓рдЧреЗрдВрдЧреЗ ред
рдореЗрд░реЗ рджреЛрд╕реНрддреЛрдВ рдФрд░ рдореИрдВрдиреЗ рдХрднреА рдХрд╛рд░реНрдб рдореЗрдВ рдлреЗрд░рдмрджрд▓ рдирд╣реАрдВ рдХрд┐рдпрд╛ред рдФрд░ рдЗрд╕рдХрд╛ рдорддрд▓рдм рд╣реИ рдХрд┐ рд╣рдорд╛рд░рд╛ рдЦреЗрд▓ рдЖрдЦрд┐рд░реА рдЧреЗрдо рдХреЗ рд╕рдВрддреБрд▓рди рд╕реЗ рдмрд╣реБрдд рдкреНрд░рднрд╛рд╡рд┐рдд рд╣реИред
рд╕рд╛рд╡рдзрд╛рди рд░рд╣реЛ :)