Задача по комбинаторике - C#

Узнай цену своей работы

Формулировка задачи:

Для участия в сложном соревновании спортивно-технического многоборства физически готовы, но но с разными показателями готовности 10 спортсменов (нумерованные с 1 по 10). В составе команды нужно заявить 6 спортсменов. Но спортсмены 3 и 7 конкурируют между собой так, что коэфициэнт отдачи у 3 равен 0.7, а у 7 равен 0.5, спортсмены 4 и 5 хорошо взаимодействуют, но при наличии спортсмена 6 их отдача равна по 0.7, потому что тот берёт игру на себя, хотя сам в таких условиях способен всего на 0.8 от своих способностей. У 6 всё хорошо с 1 и 2. Спортсмен 8 хорошо сотрудничает только с 10. По отдельности их отдача равна по 0.6. Спортсмен 9 хорошо работает только с 7 при отсутствии 8. Если не выполняется условие полной отдачи, то, когда не указано другое, отдача равна 0.5 от уровня физической готовности. Уровень физической готовности в таблице во вложении. Итог всего ЭтОгО: помочь тренеру сформировать команду с максимальной отдачей. З.Ы. Для русскоязычных форумчан перевод одного из столбцов таблицы "рівень фізичної готовності" = "уровень физической готовности/подготовки" Проблема состоит в том что я даже не знаю как эту задачу решить на бумаге, а не то что воплотить в код) Я и еще один человечек будем очень благодарны, если Вы, уважаемые форунчане, не оставите нас без поддержки)

Решение задачи: «Задача по комбинаторике»

textual
Листинг программы
Parallel.ForEach(all.NextPermutation(6).ToArray(), (x) =>
            {
                var item = x.ToArray();
                var current = GetResult(item, GetLevelTable(item));
                if (current > maxResult)
                {
                    party = item;
                    maxResult = current;
                }
                count++;
                if (count % 400 == 0) { Console.Clear(); Console.WriteLine("Обработано команд: {0}", count); };
            });

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

14   голосов , оценка 4 из 5