кто подскажет, как проще всего получить случайное число которое зависит от вероятности?
короче говоря, допустим есть массив в виде "ключ => значение".
где ключ это номер игрока а значение это кол-во купленных им лотерейных билетов.
надо случайно выбрать из всех ключей (игроков) один так что вероятность его выигрыша зависит от купленных им билетов.
заранее спасибо!
Спустя 14 часов, 1 минута, 16 секунд (5.06.2011 - 09:25) Michael написал(а):
из массива типа
(1=>3, 2=>1, 3=>4) (id=>кол-во) создай общий массив:
(1,1,1,2,3,3,3,3)
Делаешь shuffle массиву и первый достаешь.
(1=>3, 2=>1, 3=>4) (id=>кол-во) создай общий массив:
(1,1,1,2,3,3,3,3)
Делаешь shuffle массиву и первый достаешь.
Спустя 5 часов, 19 минут, 23 секунды (5.06.2011 - 14:44) MatrixGod написал(а):
Michael
думал так сделать. но если в массиве 100 тысяч игроков? и каждый купил как минимум 10 билетов?
получится массив бешенного размера. как сделать эффективно?
чтоб места не брало и быстро подсчитовало?
думал так сделать. но если в массиве 100 тысяч игроков? и каждый купил как минимум 10 билетов?
получится массив бешенного размера. как сделать эффективно?
чтоб места не брало и быстро подсчитовало?
Спустя 2 часа, 1 минута, 46 секунд (5.06.2011 - 16:46) Arni написал(а):
Ну если информация в базе данных, то сделать случайный запрос 10 записей, пересортировать по количеству, и дать выиграть тому кто билетов купил больше.
Для серверов баз данных случайная выборка есть. Потому как бы думаю вариант хороший.
Для серверов баз данных случайная выборка есть. Потому как бы думаю вариант хороший.