Просмотреть всю тему "Ускорить расчет раскладов в покере..." »»
Re: Ускорить расчет раскладов в покере...   ID:23821   ответ на 23702 Пт, 18 июня 2004 06:17 [#]
Mariner Форумы CasinoGames
Приветствую!

NoSound
Не понял насчет табличек, давай поподробнее.
В общем вчера закончил реализацию расчта пустых комбинация через таблицы при игре дилера от ТК. Результат меня разочаровал. Скорости не прибавилось, а наоборот даже убавилось. Smile Может что не так сделал.

Идея следующая.
Всего пустые комбинации получаются из 1113 пяти ранговых комбинаций. Поэтому значения рангов заранее извеcтны и их можно поместить в массив [1..1113][1..5].
Далее. Значенни каждого ранга карты меняется от 0 до 4, т.е. 0 нет карт в ранге .. 4 все карты есть в ранге.
Число пустых комбинаций в заданной пятикарточной комбинации получается перемножением числа свободных карт в ранге n1*n2*n3*n4*n5. Эти произведения тоже можно посчитать заранее и поместить в массив с числом элементов 5^5=3125 вида [0..4,0..4,0..4,0..4,0..4].
Теперь осталось посчитать возможные флэши, тоже в виде таблички, с числом элементов 2^13=8192.
Далее расчет очень прост.

цикл от 1 до 1113
суммируем число пустых комбинаций
конец

от 1 до 4
вычитаем флэши
конец

Вот и все.

Зы. Кто сможет реализовать шустро, велкам в мыло с исходником. Smile