Cod sursa(job #155016)

Utilizator AndreiDDiaconeasa Andrei AndreiD Data 11 martie 2008 17:41:58
Problema Transport Scor 0
Compilator fpc Status done
Runda Arhiva de probleme Marime 0.46 kb
var n,k,i,d,a,max,min,s,b,c:longint;
v:array[1..17000] of longint;
f,g:text;
begin
assign(f,'transport.in');reset(f);
assign(g,'transport.out');rewrite(g);
read(f,n,k);
for i:=1 to n do begin
read(f,v[i]);
if min<v[i] then min:=v[i];
max:=max+v[i];
end;
a:=1;
b:=max;
while b>a+1 do begin
c:=(a+b) div 2+(a+b) mod 2;
d:=1;
if max>c then inc(d);
if (d>k) or (c<min) then a:=c
                    else b:=c;
end;
write(g,c);
close(f);
close(g);
end.