Пачки для ассистентов
Условие
В школе готовят большой набор листков для контрольной. Листки идут в строгом порядке: сначала листок 1, потом 2, …, потом n.
Завуч хочет раздать работу k ассистентам так, чтобы каждый ассистент получил одну пачку подряд идущих листков (то есть листки каждого ассистента образуют отрезок по номерам), и все листки были розданы.
Если в пачке суммарно P страниц, то подготовка этой пачки занимает P минут. Ассистенты работают параллельно, поэтому общее время подготовки равно времени самой «долгой» пачки.
Нужно сделать раздачу так, чтобы это общее время было как можно меньше.
Формат ввода
В первой строке заданы два целых числа n и k — количество листков и количество ассистентов. Во второй строке задано n целых чисел a1, a2, …, an, где ai — число страниц в i-м листке.
Формат вывода
Выведите одно целое число — минимально возможное значение максимальной суммы страниц в одной пачке.
Ограничения
- 1 ≤ k ≤ n ≤ 200000
- 1 ≤ ai ≤ 10^9
- Ответ может не помещаться в 32-битный тип (используйте 64-битные значения; в Python ограничений нет).
Пример
Ввод:
5 2
10 1 1 1 10
Вывод:
12Решить задачу с автопроверкой на Python →
Куда дальше
- Школьный этап ВсОШ по информатике — как устроен первый этап и план подготовки за четыре недели
- Перечневые олимпиады по информатике — олимпиады перечня Минобрнауки, их уровни и что нужно к диплому
- БВИ по олимпиадам: в какие вузы берут — правила приёма вузов, разобранные построчно, со ссылкой на приказ у каждой строки