LINUX.ORG.RU
ФорумTalks

[теория вероятности][ЖЖ?][НЕХ] Угадать которое число больше.


0

1

Условия задачи: есть два человека, которые загадывают числа, третий должен угадать кто загадал большее/меньшее число, перед угадыванием, один из загадавших называет свое число.

Так вот, если ответчику загадать самому какое-то третье число, допустим S, то если какой-то из загадавших назовет число больше S, то с большей вероятностью второй загадал число меньше S, обратное верно. Если пересчитать вероятности по Байесу, то так оно и будет (так уверяет препод и наверно так оно и есть, в тервер не погружался, лениво мне). Стратегия угадывания думаю ясна?

В общем, это какая-то ошибка тервера, показатель его недоработанности, либо подтверждение очередной квантовой фигни, вроде феномена наблюдателя и прочего, наши мысли действительно могут влиять на пространство и время? БОГ действительно существует? То есть если бог перестанет нас наблюдать, то нас не будет? А кто наблюдает за богом? .... шучу (или нет).

В общем это так, отвлекся немного. Но ведь все же у кого какие думы по этому поводу?

П.С. мы такое решаем на курсе микроэкономика3, которая будет завтра и на которую я не пойду, так как приболел малость, поэтому решения от меня не будет, лениво мне, но если кто-то порешает, то огромное спасибо))

Наоборот жеж. Сравнение характеризует саму S. А S связано с обоими числами. (через сравнения)

Т. е. если S больше первого числа, то, вероятнее, оно больше и второго. Аналогично, если меньше - меньше второго.

alfix
()
Ответ на: комментарий от dikiy

Ради интереса попробуй посчитать Pi методом броска точек на квадрат, а потом подсчета количества точек, попавших в круг. Пи вычисляешь из соотношения количества точек.

Я использовал для этого гамма-генератор от ГОСТ28147 в режиме счетчика. Получилось очень даже вменяемое Пи. А glibc-ный random() я как-то тестировал на качество... вернее, пытался. После провала теста на энтропию битов продолжать не было смысла.

segfault ★★★★★
()
Ответ на: комментарий от dikiy

Заменил count на 100 и вместо s = rnd*100 взял input s. Поработал генератором случайных чисел сам, вышло 69 винов и 31 фейл.

Если спрашивать у людей о любом числе, то скорее всего среди них не будет дробных, отрицательных и скорее всего они будут меньше 100.

PolarFox ★★★★★
()
Ответ на: комментарий от dikiy

совершенно не обязательно. Вообще говорить о равномерном распределении на числовой оси без оговаривания границ не имеет смысла. Мы вынуждены брать нормальное распределение.

Даны три одинаково распределенные случайные величины. Из того, что они _одинаково_ распределены, следует, что все шесть комбинаций равновероятны (одну можно получить из другой перестановкой).

Если распределение достаточно хорошее, то вероятность того, что хотя бы два совпадут, равна нулю. Нормальное распределение в этом смысле хорошее.

Ну раз других вариантов нет, то каждой тройке можно приписать вероятность 1/6.

ival ★★
()
Ответ на: комментарий от PolarFox

В общем распределение для «задумай любое число», особенно если не оговаривать границы, будет очень сильно отличаться от нормального.

PolarFox ★★★★★
()
Ответ на: комментарий от PolarFox

Заменил count на 100 и вместо s = rnd*100 взял input s. Поработал генератором случайных чисел сам, вышло 69 винов и 31 фейл.

Если спрашивать у людей о любом числе, то скорее всего среди них не будет дробных, отрицательных и скорее всего они будут меньше 100.

о чем и речь. Оно будет автоматически нормально распределенным.

dikiy ★★☆☆☆
()
Ответ на: комментарий от segfault

Это при условии, что ответчик сам не знает S, а только больше ли оно чем B. Но по логике вещей, он его знать должен.

Конечно, на знании ответчиком числа S, наверняка можно построить лучшую стратегию угадывания, но в условии предлагается использовать только факт S < B.

ival ★★
()
Ответ на: комментарий от PolarFox

Вывело 0.671 винов и 0.329 фейлов при одном запуске, 0.637 и 0.363 при другом. В общем-то штука работает.

Вполне ожидаемые 2 к одному.

ival ★★
()
Ответ на: комментарий от ival

Даны три одинаково распределенные случайные величины. Из того, что они _одинаково_ распределены, следует, что все шесть комбинаций равновероятны (одну можно получить из другой перестановкой).

Да. вопрос снят.

dikiy ★★☆☆☆
()
Ответ на: комментарий от PolarFox
import random

yes,no=0,0

for i in xrange(0xFFFF):
    a=[]
    for n in xrange(3): a.append(random.random())
    [A,B,S]=a
    if ((A>S) & (B<S)) | ((A<S) & (B>S)): yes+=1
    else: no+=1

print yes,no
$ python ./a.py
21732 43803
alfix
()

Та феерическая хрень, которая сложилась у тебя в голове, слабо связана с теорией вероятности.

Та феерическая хрень, которая сложилась у тебя в голове, ошибочна. Теория вероятности - точная наука и работает всегда. Перед применением конкретной теоремы/формулы необходимо проверить условия её применимости.

router ★★★★★
()
Ответ на: комментарий от alfix

Это в соответствии со вторым абзацем стартового поста.

Собственно, если сравнивать второе число с первым, то получаем обратную ситуацию.

alfix
()
Ответ на: комментарий от ErasimHolmogorin

первый загадал 1, ты загадал 2. получается что второй загадал скорее всего 1 ? чушь ведь

teod0r ★★★★★
()

Числа целые? положительные?

cvs-255 ★★★★★
()
Ответ на: комментарий от Sadler

Функция распределения вероятности тождественно равна 0. Иначе нормировка на 1 не получается заведомо. Но интеграл от 0 это 0. => не существует такой функции.

cvs-255 ★★★★★
()

Рассчитай все аккуратно. Введи P_n - вероятность загадывания числа n. sum(P_n) = 1. И аккуратно все учти. Я посчитал, никаких противоречий нет.

cvs-255 ★★★★★
()
Ответ на: комментарий от Sadler

что геометрическая схема, например, вполне работает с R.

??

cvs-255 ★★★★★
()
Ответ на: комментарий от Sadler

Я посчитал для целых чисел произвольных p_n sum(p_n) = 1, так никаких противоречий нет

cvs-255 ★★★★★
()

Наверное, есть ещё какие-то дополнительные условия.

Вот я бы например загадал число ln(3.2533) + i*sin(sqrt(2))*pi, а второй участник загадал число 2, и какое больше?

Xenius ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.