Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2005.03.06;
Скачать: CL | DM;

Вниз

Задачка   Найти похожие ветки 

 
default ©   (2005-02-17 19:42) [0]

Имеется несимметричная монета, для которой вероятность
выпадения орла есть неизвестное нам число p (0 < p < 1).
Покажите, как с её помощью можно имитировать симметричную
монету, сделав несколько бросаний.
(Указание: бросьте монету дважды; если результаты разные,
дайте ответ; если одинаковые, повторяйте испытание.)
P.S. таким образом, найдя алгоритм, можно от обычных
    монеток, независимо от того насколько они несимметричны,
    получать тот же результат что и от симметричных монеток
    правда подрасывать придётся более одного раза.


 
Virgo_Style ©   (2005-02-17 21:12) [1]

Для начала, imho, надо найти p, что вообще говоря, требует в идеале бесконечного числа экспериментов. Когда с этим будет покончено ;-D , можно будет разговаривать дальше. AFAIR.


 
MBo ©   (2005-02-17 21:14) [2]

не совсем понятно, в чем состоит задача.
при бросании 2 раза возможны исходы с вероятностями:
ОО  p^2
ОР  p(1-p)
РО  (1-p)p
РР  (1-p)^2
поскольку p не знаем, игнорируем первый и последний исходы.
Последовательности же ОР и РО равновероятны, так что выпадение первой считаем квазиорлом, а второй - квазирешкой :)


 
Virgo_Style ©   (2005-02-17 21:17) [3]

MBo ©   (17.02.05 21:14) [2]
КЛАСС!! :-)


 
default ©   (2005-02-17 22:24) [4]

MBo ©   (17.02.05 21:14) [2]
да!!я тоже догадался
признайте красивая задача?
и есть практическое её применение и не требует каких-то знаний, больших выкладок:)


 
default ©   (2005-02-17 22:27) [5]

MBo ©   (17.02.05 21:14) [2]
кстати если бы не было указания, наверно, решение на дольше бы затянулось или нет(для вас)?


 
default ©   (2005-02-17 22:30) [6]

вот моделирование на всякий

const
 p = 0.3;
 N = 1000000;

var
 Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
var
 F: Boolean;
 i, succ: Cardinal;
begin
 Randomize;
 succ := 0;
 for i := 1 to N do begin
   repeat
     F := Random <= p;
     if (F <> (Random <= p)) then begin
       if F then Inc(succ);
       Break
     end;
   until False;
 end;
 Caption := FloatToStr(succ / N);
end;


 
MBo ©   (2005-02-18 06:31) [7]

Да, задача занятная.
В принципе, достаточно наводки "сделав несколько бросаний"
>решение на дольше бы затянулось или нет
Это непредсказуемо ;)



Страницы: 1 вся ветка

Текущий архив: 2005.03.06;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.042 c
1-1108970320
Niru
2005-02-21 10:18
2005.03.06
Экспорт


1-1109075955
Nad89
2005-02-22 15:39
2005.03.06
Кликнуть по ссылке в TWebBrowser


1-1109016820
Guf
2005-02-21 23:13
2005.03.06
Разноцветный TTreeView


3-1107404754
O.O
2005-02-03 07:25
2005.03.06
Разные языковые раскладки


1-1109009885
mariya_mezenceva
2005-02-21 21:18
2005.03.06
fastreport3 (экспорт в excel)