Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- program Project2;
- {$APPTYPE CONSOLE}
- uses
- SysUtils;
- var
- sum:int64;
- n, k, v, m, j, h, l, i : integer;
- bool : boolean;
- q : array[1..10002] of integer;
- function ok(x : integer) :boolean;
- begin
- v:=0;
- for i:=1 to n do v := v + (q[i] div x);
- if v>=k then result:=true
- else result:=false;
- end;
- begin
- //reset(input, 'ropes.in');
- //rewrite(output, 'ropes.out');
- read(n, k);
- sum:=0;
- for i:=1 to n do begin
- read(q[i]);
- sum:=sum+q[i];
- end;
- if sum<k then begin
- writeln(0);
- exit;
- end;
- h:=(sum div k)+1;
- l:=1;
- while (ok(l) = true) and (h-l>1) do
- begin
- if ok(round((h+l)/2)) then l:=round((h+l)/2)
- else h:=round((h+l)/2);
- end;
- writeln(l);
- readln;
- readln;
- end.
Add Comment
Please, Sign In to add comment