Cod sursa(job #1663161)

Utilizator laura.calimanLaura Caliman laura.caliman Data 25 martie 2016 16:16:09
Problema Transport Scor 0
Compilator fpc Status done
Runda Arhiva de probleme Marime 0.6 kb
var n,k,i,j,m,s,t,r,max:longint;
    a:array[1..16000] of longint;
    
begin
  assign(input,'transport.in');
  assign(output,'transport.out');
  reset(input);
  rewrite(output);
  read(n,k);
  s:=0;
  for i:=1 to n do begin
    read(a[i]);
    s:=s+a[i];
  end;
  r:=1;
  while t<>k do begin
    m:=(r+s) div 2;
//    writeln(r,' ',m,' ',s);
    t:=1;
    j:=0;
    max:=0;
    for i:=1 to n do begin
      if j+a[i]<=m then begin
        j:=j+a[i];
      end else begin
        inc(t);
        j:=a[i];
      end;
    end;
    if t<k then s:=m
      else r:=m;
  end;
  write(m);
end.