Активисты расчищают берег реки от мусора. Всего на субботник вышло 100 активистов. Им осталось только убрать старые брёвна, принесённые течением.
Одно бревно перетаскивает бригада, в которой может быть два и более человек. Если люди в бригаде имеют разный рост, переносить бревно неудобно. Назовём неудобством бригады разность между ростом самого высокого и самого низкого человека в бригаде. Рост и значение неудобства мы будем измерять в миллиметрах. Назовём неудобством разбиения наибольшее значение неудобства для всех бригад, входящих в разбиение.
Необходимо сформировать бригады таким образом, чтобы сделать неудобство разбиения было минимальным.
Например, пусть в субботнике участвуют четыре активиста ростом 1600, 1750, 1650 и 1850 мм, и их нужно разбить на две бригады по два человека в каждой.
Это можно сделать разными способами.
Например, если одну бригаду составить из людей ростом 1600 и 1750 мм, а другую — из 1650 и 1850 мм, то в первой бригаде неудобство будет равно 150 мм, а во второй бригаде — 200 мм. Неудобство разбиения в этом случае составит 200 мм. Но если в первую бригаду направить людей ростом 1750 и 1850 мм, а во вторую бригаду — 1600 и 1650 мм, то неудобство разбиения будет равно 100 мм, что лучше.
Вам дан файл, содержащий значения роста 100 активистов, участвующих в субботнике. Вы можете скачать этот файл в разных форматах.
subbotnik.txt — текстовый файл.
subbotnik.xls — электронная таблица Microsoft Excel.
subbotnik.ods — электронная таблица Libre Office Calc.
Ответьте на следующие вопросы.
Вы можете использовать программу для работы с электронными таблицами (Microsoft Excel, Libre Office Calc), язык программирования или любые другие средства компьютера.
Пусть все участники субботника объединены в одну бригаду.
Чему будет равно неудобство такой бригады?
Пусть активистов нужно разделить на 2 бригады по 50 человек в каждой.
Чему будет равно минимально возможное значение такого разбиения?
Пусть активистов нужно разделить на 10 бригад по 10 человек в каждой.
Чему будет равно минимально возможное неудобство такого разбиения?
Чтобы отнести последнее бревно, требуется бригада из 10 человек. Необходимо выбрать 10 человек из 100 так, чтобы составить бригаду с минимально возможным неудобством. Чему будет равно неудобство этой бригады?
1 Ответ
Чтобы решить и составить бригаду с минимальным возможным неудобством, через надо проделать следующие действия:
file = open(«subbotnik.txt») number = int(input()) #количество людей peoples = sorted(list(map(int, file.readlines())))[:number] print(max(peoples) — min(peoples))