Я разрабатываю карточную игру, которая использует набор из трех карт в стиле румяна. Из случайного выбора карточек мне нужен алгоритм, чтобы выбрать, какие карты доставят мне наибольшее количество наборов.Алгоритм для поиска оптимального количества наборов стиля в стиле румми?
Под «наборами Рамми стиле из трех» я имею в виду:
- Все три карты имеют то же значение, как и три валета. OR
- Все три карты одного и того же костюма и последовательные по порядку, как 7, 8, 9 все бриллианты.
Например, учитывая карты: 6D, 7D, 7C, 7H, 8D, 8C, 9C, 10H
я мог образовывать множество: {7D, 7C, 7H}, но это было бы только множество Я бы выбрался из него, и это было бы не оптимально.
оптимальные наборы в данном случае являются: {{6D, 7D, 8D}, {7С, 8С, 9С}}
Я попытался грубая сила (переставляет через все приведенные карты, посмотреть, что соответствует в порядке что перестановка), но это оказалось слишком медленным. Проблема в том, что она имеет сходство с другими решаемыми проблемами, и поэтому я спрашиваю здесь.
Звучит как проблема с рюкзаком для меня - http://en.wikipedia.org/wiki/Knapsack_problem –
Hi PeteVasi Вы можете поделиться примером кода для этой игры, которую вы разработали – Dotnet