Откат в Java: выберите, чтобы максимизировать выгоду

У меня есть список футболистов (20), и для каждого игрока у меня есть его уровень игры (число от 1 до 10, которое определяет качество игрока) и его положение на поле (вратарь, защитник, полузащитник или нападающий). Кроме того, есть список пар несовместимых игроков, которые не могут играть вместе в основной команде.

Что мне нужно сделать, так это сформировать команду с вратарем, четырьмя защитниками, тремя полузащитниками и тремя нападающими, которые максимизируют общий игровой уровень (определяемый как сумма игровых уровней их игроков) и такой, чтобы не было несовместимого игрока. пары в пласте.

Я хочу применить возврат, но я в замешательстве, я не знаю, как решить эту проблему. Есть идеи? Я думал о наличии вспомогательного списка, в котором я могу сохранить выбранных мной игроков и использовать их в качестве базового варианта рекурсии, когда в моем вспомогательном списке 11 игроков, сохранить все возможные решения и выбрать лучшее... Пожалуйста, помогите..

0 ответов

Другие вопросы по тегам