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

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

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

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

Вложение: mails.zip
(Размер: 1.32KB, Загружено 131 раз)

Sharky
Re: Самое быстрое определение покерной комбинации [ID=24575] [ответ на 24521 ()]
Чт, 7 сентября 2006 17:52 [#]
Зачем же забывать ассемблер? Делфи прекрасно его понимает, пишешь

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

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

http://www.delphimaster.ru/articles/optimization.html
grey
Re: Самое быстрое определение покерной комбинации [ID=24578] [ответ на 24521 ()]
Чт, 7 сентября 2006 18:23 [#]
Sharky писал
А насчет оптимизатора, ни такой он и мощный, как хотелось бы. Почитай хотя бы это:
http://www.delphimaster.ru/articles/optimization.html
Да ничего там особо криминального. Я таких примеров могу вагон привести. Это же не значит, что так надо писать и думать, что оптимизатор за тебя всю работу сделает.
Sharky
Re: Самое быстрое определение покерной комбинации [ID=24579] [ответ на 24521 ()]
Чт, 7 сентября 2006 18:35 [#]
Ладно, у нас начинается оффтоп уже. Для подобных бесед существуют другие форумы... Я хотел самый быстрый перебор, надеюсь я таким его и сделал.. Cool
YuDmAk
Re: Самое быстрое определение покерной комбинации [ID=24580] [ответ на 24521 ()]
Чт, 7 сентября 2006 23:35 [#]
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  >  »]