Просмотреть всю тему "Самое быстрое определение покерной комбинации" »»
Re: Самое быстрое определение покерной комбинации   ID:24586   ответ на 24521 Сб, 9 сентября 2006 11:34 [#]
Fabrica Форумы CasinoGames
А зачем иметь массив 52^5?
Достаточно иметь 13^5=371293 элементов. Имеем пятерку карт, разделяем отдельно на масти и номиналы. Перемножаем масти (их всего 4). У флешей произведение мастей всех 5 карт=1^5, 2^5, 3^5, 4^5. Если произведение не равно этим константам, значит не флеш. По номиналам определяем все кроме флешей, стритфлешей и роялей. Т.е. определяем нет игры, ТК, пара и т.д. как ячейка в массиве М(а[1],a[2],a[3],a[4],a[5]). За одно обращение к массиву и одно произведение 5 чисел определяем силу руки.