Базар вокруг игры / Комп в помощь / Самое быстрое определение покерной комбинации
  Страницы(9): [ «  <  #  1  2  3  4  5  6  7  8  9  >  »]   Перейти вниз
Re: Самое быстрое определение покерной комбинации   ID:24561   ответ на 24521 Чт, 7 сентября 2006 16:26 («] [#] [»)
korovin Форумы CasinoGames
Так тебе для какого N то надо? До 5 делается просто таблица 52^N, если 6-7 то 13^N используеш Адрес формируеш когда карту в руку кладеш, так что в самом вложеном цикле у тебя формируется ОДНА последняя цифыра адреса и одно образение к таблице. ВСЕ. как формировать флаг мастеой комбинации надеюсь сообразиш.
        
 
Re: Самое быстрое определение покерной комбинации   ID:24562   ответ на 24521 Чт, 7 сентября 2006 16:27 («] [#] [»)
grey Форумы CasinoGames
Sharky писал
А итоговый перебор со сравнением рук, например для 6карточного у меня в 1,5-2 раза быстрее думаю будет...
А конкретнее можно, что такое итоговый перебор?
        
 
Re: Самое быстрое определение покерной комбинации   ID:24563   ответ на 24521 Чт, 7 сентября 2006 16:29 («] [#] [»)
YuDmAk Форумы CasinoGames
надо на n=7.
Короче ключ в таблицах, да?
        
 
Re: Самое быстрое определение покерной комбинации   ID:24564   ответ на 24521 Чт, 7 сентября 2006 16:30 («] [#] [»)
grey Форумы CasinoGames
Korovin писал
Так тебе для какого N то надо? До 5 делается просто таблица 52^N
Эх, Коровин, все-таки отдал за просто так. Тебе ж целых 30 баксов предлагали Laughing

"Это вы придумали Windows..."(c) Легко и просто, только оперативки побольше, побольше!
        
 
Re: Самое быстрое определение покерной комбинации   ID:24565   ответ на 24521 Чт, 7 сентября 2006 16:32 («] [#] [»)
YuDmAk Форумы CasinoGames
Только когда "13^N используеш" а масти отдельно считаешь, то приходиться сф и рояль отдельно обрабатывать, но это не беда.

Так в чем пишите то?
        
 
Re: Самое быстрое определение покерной комбинации   ID:24566   ответ на 24521 Чт, 7 сентября 2006 16:33 («] [#] [»)
Sharky Форумы CasinoGames
Grey писал чт, 07 сентября 2006 16:27
Sharky писал
А итоговый перебор со сравнением рук, например для 6карточного у меня в 1,5-2 раза быстрее думаю будет...
А конкретнее можно, что такое итоговый перебор?
Тьфу, обмен карт в смысле. Коровин где-то писал, что обмен 5 у него 2 сек на его супер компе. У меня все обмены и +1 карта -- 2,3 сек на моем компе с меньшей частотой в 2 раза. Запускал демку Блица, и засекал секундомером на мобилке его скорость перебора в районе 6-7 секунд против моих 2,3.
        
 
Re: Самое быстрое определение покерной комбинации   ID:24567   ответ на 24521 Чт, 7 сентября 2006 16:35 («] [#] [»)
YuDmAk Форумы CasinoGames
Просто я не таблицами делал, а так просто детектил по вопросам:
рояль?
каре?
.
.
.
пара?
ак?
без игры

Согласен, куча лишней и бесполезной работы. Только обсмеивать не надо.
        
 
Re: Самое быстрое определение покерной комбинации   ID:24568   ответ на 24521 Чт, 7 сентября 2006 16:37 («] [#] [»)
grey Форумы CasinoGames
Sharky писал
Коровин где-то писал, что обмен 5 у него 2 сек на его супер компе.
Сомневаюсь. IMHO гораздо быстрее.
        
 
Re: Самое быстрое определение покерной комбинации   ID:24569   ответ на 24521 Чт, 7 сентября 2006 16:38 («] [#] [»)
Sharky Форумы CasinoGames
Grey писал чт, 07 сентября 2006 16:37
Sharky писал
Коровин где-то писал, что обмен 5 у него 2 сек на его супер компе.
Сомневаюсь. IMHO гораздо быстрее.
Ну не знаю, нужно сравнивать на одной машине. Тогда будет корректно.
        
 
Re: Самое быстрое определение покерной комбинации   ID:24570   ответ на 24521 Чт, 7 сентября 2006 16:40 («] [#] [»)
YuDmAk Форумы CasinoGames
Так и не ответили в чем писать, или везде примерно одинаково?
        
 
Re: Самое быстрое определение покерной комбинации   ID:24571   ответ на 24521 Чт, 7 сентября 2006 16:43 («] [#] [»)
Sharky Форумы CasinoGames
YuDmAk писал чт, 07 сентября 2006 16:40
Так и не ответили в чем писать, или везде примерно одинаково?
В чем умеешь в том и пиши. Что толку если я скажу на АСМе? У меня кстати треть алгоритмов на нем и написано... Cool
        
 
Re: Самое быстрое определение покерной комбинации   ID:24572   ответ на 24521 Чт, 7 сентября 2006 16:45 («] [#] [»)
YuDmAk Форумы CasinoGames
ну ты и монстр, раз на асме умеешь. Снимаю шляпу.Smile
Ок, пасибо всем. Начинаем работать.
        
 
Re: Самое быстрое определение покерной комбинации   ID:24573   ответ на 24521 Чт, 7 сентября 2006 16:46 («] [#] [»)
YuDmAk Форумы CasinoGames
Потом отпишусь, что получилось
        
 
Re: Самое быстрое определение покерной комбинации   ID:24574   ответ на 24521 Чт, 7 сентября 2006 17:33 («] [#] [»)
korovin Форумы CasinoGames
Очень много писал на ассемблере под ДОС, 93-99 г. хобби такое было. Потом как-то рещил в дельфи переписать большие циклы, получилось ВДВОЕ дольше. После чего решил что компилятор больше меня понимает в программировании под винду и забыл про ассемблер, навсегда. В файле одно из моих творений, запускалось у сотрудниц при включении копмутера, в .dbf записывалисб отзывы.

Вложение: mails.zip
(Размер: 1.32KB, Загружено 140 раз)
        
 
Re: Самое быстрое определение покерной комбинации   ID:24575   ответ на 24521 Чт, 7 сентября 2006 17:52 («] [#] [»)
Sharky Форумы CasinoGames
Зачем же забывать ассемблер? Делфи прекрасно его понимает, пишешь

function Bla(Arg: Integer): Integer;
asm
// --> EAX - Arg
// <-- EAX – Result

и погнал Smile
        
 
Re: Самое быстрое определение покерной комбинации   ID:24576   ответ на 24521 Чт, 7 сентября 2006 17:59 («] [#] [»)
grey Форумы CasinoGames
Sharky писал
Зачем же забывать ассемблер? Делфи прекрасно его понимает, пишешь
А смысл? Сначала надо оптимизировать сам алгоритм до предела, а потом уже дожимать асмом. Если получится. Что вряд ли. Коровин прав, в дельфи очень мощный оптимизатор.
        
 
Re: Самое быстрое определение покерной комбинации   ID:24577   ответ на 24521 Чт, 7 сентября 2006 18:15 («] [#] [»)
Sharky Форумы CasinoGames
Grey писал чт, 07 сентября 2006 17:59
А смысл? Сначала надо оптимизировать сам алгоритм до предела, а потом уже дожимать асмом. Если получится. Что вряд ли. Коровин прав, в дельфи очень мощный оптимизатор.
Оптимизировать алгоритм, это само собой. И писать на асме процедуры нужно только в критических ко времени выполнения местах иначе разработка софта себя не окупит. А насчет оптимизатора, ни такой он и мощный, как хотелось бы. Почитай хотя бы это:

http://www.delphimaster.ru/articles/optimization.html
        
 
Re: Самое быстрое определение покерной комбинации   ID:24578   ответ на 24521 Чт, 7 сентября 2006 18:23 («] [#] [»)
grey Форумы CasinoGames
Sharky писал
А насчет оптимизатора, ни такой он и мощный, как хотелось бы. Почитай хотя бы это:
http://www.delphimaster.ru/articles/optimization.html
Да ничего там особо криминального. Я таких примеров могу вагон привести. Это же не значит, что так надо писать и думать, что оптимизатор за тебя всю работу сделает.
        
 
Re: Самое быстрое определение покерной комбинации   ID:24579   ответ на 24521 Чт, 7 сентября 2006 18:35 («] [#] [»)
Sharky Форумы CasinoGames
Ладно, у нас начинается оффтоп уже. Для подобных бесед существуют другие форумы... Я хотел самый быстрый перебор, надеюсь я таким его и сделал.. Cool
        
 
Re: Самое быстрое определение покерной комбинации   ID:24580   ответ на 24521 Чт, 7 сентября 2006 23:35 («] [#] [»)
YuDmAk Форумы CasinoGames
Korovin писал чт, 07 сентября 2006 17:26
До 5 делается просто таблица 52^N, если 6-7 то 13^N используеш Адрес формируеш когда карту в руку кладеш, так что в самом вложеном цикле у тебя формируется ОДНА последняя цифыра адреса и одно образение к таблице. ВСЕ. как формировать флаг мастеой комбинации надеюсь сообразиш.
для N=7: 13^N = 62748517, каждая запись не меньше 7байт, итого таблица получается больше 440 МегаБайт. В оперативку такую махину не положишь, поэтому пришлось в файл на диске писать. Так вот одно считывание из фала занимает 0,000002 сек, что всего в 17 раз быстрее полной работы моего убогого алгоритма. В итоге, если дописать по намеченой схеме, то одно определение будет занимать по крайней мере больше 0,000002 сек, а значит файл на диске - это тупиковый вариант.

Господа! Подскажите куда его шить? Или я саму подсказку Коровина в корне не правильно понял?
        
 
Страницы(9): [ «  <  #  1  2  3  4  5  6  7  8  9  >  »]  
Предыдущая тема:Округление Точного Счета
Следующая тема:Исходник симулятора БД
Быстрый переход к форуму
  
Текстовая версия  RSS лента
Вернуться вверх

Текущее время: Чт, 12 декабря 13:36:43 2024
Время, затраченное на генерацию страницы: 0.02307 секунд