2016-02-12 2 views
2

Мне нужен способ получить наивысшие очки в диапазоне зарплаты. I 0e 50,000 Здесь есть аналогичный вопрос Algorithm to select Player with max points but with a given cost. В основном я должен выбрать оптимальный состав из 9 игроков.Получите самую высокую точку в диапазоне зарплаты

Я занимаюсь поиском в Интернете, и я нашел, что это может быть достигнуто с помощью линейного программирования. Но я не знаю, как использовать Lp в php.

Любая идея, как я могу достичь этого или есть какой-либо другой способ сделать это?

+0

В каком формате представлены ваши данные и какой код вы пробовали? – M1ke

+0

Это звучит как проблема с рюкзаком **: у вас есть определенный бюджет («размер» рюкзака) и хотите потратить его на подмножество товаров, которое максимизирует ваш выигрыш. Некоторые проблемы с поиском по рюкзаку укажут вам в правильном направлении, если это действительно та форма, которую ваша проблема занимает. – grendelsdad

ответ

0

Если вы храните информацию в массивах, я считаю, что вы можете достичь результата, используя array_multisort, который даст результат, похожий на порядок SQL. Например, order by points DESC, salary ASC. Это вернет массив, в котором игроки топ-очков будут сверху, и если у кого-то из них будет одинаковое количество очков, первым будет тот, у которого самая низкая зарплата.

Ответ на вопрос this вопрос показывает, как использовать array_multisort.

+0

Я уже сортировал массив на основе самой высокой точки DESC Это то, что я сделал до сих пор. [ссылка] (http://stackoverflow.com/questions/35102337/sort-php-array-on-the-basis-of-salary-and-point?noredirect1_comment57925728_35102337) Это мой предыдущий пост. – Rahul

Смежные вопросы