Репетитор ОГЭ и ЕГЭ по информатике
обучение программированию на Python

ЗАДАНИЕ 27 - 60

У транспортной компании есть N пунктов приёма отправлений. Все пункты расположены вдоль улицы и имеют номера, соответствующие расстоянию от нулевой отметки до конкретного пункта. Известно количество отправлений, которое ежедневно принимают в каждом из пунктов.


Компания планирует открыть склад в одном из пунктов приёма, куда необходимо перемещать отправления со всех пунктов приема. Отправления перевозят в автомобилях вместимостью не более M отправлений. Автомобиль за один рейс может привезти отправления на склад только из одного пункта приёма, при этом из одного пункта приема отправлений допустимо делать только один рейс с неполной загрузкой автомобиля. Стоимость рейса считается равной расстоянию от пункта приема до склада. Место для склада выбрали таким образом, чтобы стоимость доставки всех отправлений была минимальной. Определите стоимость перевозки всех отправлений из пунктов приёма.


Входные данные

Даны два входных файла (файл A и файл B), каждый из которых в первой строке содержит два числа N и M (1 ≤ N ≤ 200 000, 1 ≤ M ≤ 200) – количество пунктов приёма отправлений и количество отправлений, которые может перевозить автомобиль за один рейс. В каждой из следующих N строк находятся два числа: номер пункта и количество отправлений, принимаемых на этом пункте за сутки (все числа натуральные, количество отправлений в каждом пункте не превышает 1000). Пункты перечислены в порядке их расположения вдоль улицы, считая от нулевой отметки.


В ответе укажите два числа: сначала значение искомой величины для файла А, затем – для файла B.


Типовой пример организации данных во входном файле

6 20

1 10

3 20

6 10

7 15

8 20

10 35


При таких исходных данных компании выгодно открыть склад в пункте 7. В этом случае стоимость перевозки составит: 6 + 4 + 1 + 1 + 6.


Типовой пример имеет иллюстративный характер. Для выполнения задания используйте данные из прилагаемых файлов.


Предупреждение: для обработки файла B не следует использовать переборный алгоритм, вычисляющий количество рейсов для всех возможных вариантов, поскольку написанная по такому алгоритму программа будет выполняться слишком долго.

Посмотреть ответ
Ответ:

Подсказки

Нужна помощь в решении?

 

Меня зовут Евгений Владимирович. Проводу подготовку учеников по ОГЭ, ЕГЭ по информатике. Обучаю программировать на Python с нуля.

Что я предлагаю:

  • Видеозапись каждого занятия - отправка ученику для повторения
  • Индивидуальный подход к каждому ученику, с учетом его текущего уровня знаний и целей.
  • Подготовку по всем разделам ЕГЭ: теория, практика, решение типовых заданий и тренировочных вариантов.
  • Домашние задания и их разбор
  • Помощь с задачами и проектами Яндекс Лицея
  • Разбор подводных камней в задачах экзаменов
  • Подготовка по программированию для ЕГЭ на языке Python
  • Решение задач разного уровня сложности
  • Решение задач, максимально приближенных к реальному ЕГЭ
  • Обучение эффективным стратегиям выполнения заданий, управлению временем на экзамене.
  • Регулярные тестирования для оценки прогресса.
  • Использование современных методик и материалов, адаптированных к формату экзамена.

Мои преимущества:

  • Глубокое знание программы ЕГЭ по информатике.
  • Индивидуальный план занятий, гибкий график.
  • Поддержка и мотивация на пути к успеху.
  • Помощь в подготовке как к базовой, так и к профильной части экзамена.

Для кого подойдут мои занятия:

  • Студенты и школьники, готовящиеся к ЕГЭ по информатике.
  • Те, кто хочет повысить свой уровень знаний и уверенность в своих силах.
  • Ученики, испытывающие сложности с определенными темами или задачами.

К каким результатам могу привести

  • По ОГЭ есть опыт подготовки на 100 баллов
  • по ЕГЭ на 90+ баллов

Возраст ученика не важен, опыт в программировании не важен.

Как проводятся занятия

Занятия онлайн.

Опыт преподавания 13 лет