Dr. K. L. Metlov (dr_klm) wrote,
Dr. K. L. Metlov
dr_klm

Category:

Скачки

Если б я имел коня,
Это был бы номер!
Если б конь имел меня,
Я б,наверно,помер...

— из старого, народного...

Коня у меня нет, ;-) а значит устроить настоящие скачки не представляется возможным. Поэтому я только что придумал заменитель -- cкачки БЕЗ КОНЯ ! ;-))

Тыгыдык, тыгыдык, тыгыдык... ;-)

В эту игру может играть несколько человек. Чем больше, тем лучше. Для игры требуется монетка, или игральный кубик (при бросании которого различаются только "чет" и "нечет", играющие роль "орла" и "решки" при бросании монеты, соответственно).

Сначала выбираются "кони". "Конями" у нас будут последовательности орлов и решек (скажем четырех, если больше -- слишком долго ждать результатов "забега", если меньше -- не так интересно). Для выбора одного "коня" бросаем монетку четыре раза, последовательно, и записываем выпавшую комбинацию, например "ОРОР" (орел, решка, орел, решка). Таким-же способом выбираем и записываем еще несколько "коней". Для удобства, "коням", можно дать имена.

Принимаем и записываем анонимные ставки на выбранных "коней" от участников игры. Это делается по той-же процедуре, что и на скачках.

Ну, и, собственно, забег. Ведущий бросает монету последовательно. Генерируя, цепочку орлов и решек... Например,

ООРООРООРРОРРОРОР.

Как только в этой цепочке появляется последовательность, соответствующая одному из "коней" (подчеркнуто) -- забег заканчивается, обьявляется победитель и банк делится пропорционально поставившим на этого "коня".

Я это честно только что придумал, однако, не могу исключить, что такая идея не пришла кому-либо другому раньше. Буду признателен за ссылку.

С чего это я вдруг...
В принципе, вариант этой игры с двумя "конями" был рассмотрен Джоном Конуэем (John Conway). Если обозначить орлы и решки нулями и единицами -- то программа, подсчитывающая среднее количество бросков до того как встретится заданная комбинация на языке J (а вы думали ? ;-) запишется как:
   x =: #@] +/@{. *//.@|.@(+:@(=/))
работает так:
   x~ 0 1 0 1
20
Тоесть, упомянутый выше "конь" ОРОР "добежит" в среднем за 20 бросков монеты. Определить вероятность того, что один "конь" "добежит" быстрее, чем другой поможет программа
   p =: (([x[)-[x]) (]%+) ((]x])-]x[)
Например, "конь" ОРОР "прибежит" быстрее, чем "конь" РОРР с вероятностью
   0 1 0 1 p 1 0 1 1
0.642857

Эквивалентная глаголам x и p программа на языке C. ;-)))
Tags: j
Subscribe

  • Post a new comment

    Error

    default userpic

    Your reply will be screened

    Your IP address will be recorded 

    When you submit the form an invisible reCAPTCHA check will be performed.
    You must follow the Privacy Policy and Google Terms of use.
  • 6 comments