// PascalABC.NET 3.2, сборка 1379 от 21.01.2017// Внимание! Если программа не работает, обновите версию!begin var ЕстьКусков,НадоКусков:integer; Readln(ЕстьКусков,НадоКусков); var Длины:=ReadArrInteger(ЕстьКусков); var ОбщаяДлина:=Длины.Sum; if НадоКусков>ОбщаяДлина then Writeln(0) else begin var ДлинаКуска:=ОбщаяДлина div НадоКусков; repeat if Длины.Select(Кусок->Кусок div ДлинаКуска).Sum >=НадоКусков then break else ДлинаКуска-=1; until false; writeln(ДлинаКуска) endend.
Пример4 11802 743 457 539200