Pagini recente » Cod sursa (job #1898663) | Cod sursa (job #36242) | Cod sursa (job #560061) | Cod sursa (job #1634559) | Cod sursa (job #801680)
Cod sursa(job #801680)
var i,n,k,max,s,mid:longint;
a:array [1..16000] of longint;
f,g:text;
function control(p:longint):boolean;
var i,j,s:longint;
begin
s:=0;
j:=0;
control:=false;
for i:=1 to n do
if s+a[i]<=mid then
s:=s+a[i]
else
begin
s:=a[i];
inc(j);
end;
if j<k then
control:=true
else
control:=false;
end;
begin
assign(f,'transport.in');
assign(g,'transport.out');
reset(f);
rewrite(g);
readln(f,n,k);
for i:=1 to n do
begin
readln(f,a[i]);
s:=s+a[i];
if a[i]>max then
max:=a[i];
end;
repeat
mid:=(max+s) div 2;
if control(mid) then
s:=mid
else
max:=mid+1;
until max=s;
write(g,max);
close(f);
close(g);
end.