PersonalCorpus 版 (精华区)

155548 05:27:55 6 Mar 2002
Bozhang,HIT,P.R.China 1184 Pascal Accepted 0.05 sec 94K


var
    a:array[1..10000] of integer;
    r:real;
    i,j,m,t,n,k:integer;
function cut(m:integer):integer;
var i:integer;
begin
    result:=0;
    for i:=1 to n do begin
        result:=result+(a[i] div m);
        if result>=k then break;
    end;
end;
begin
    readln(n,k); j:=0;
    for i:=1 to n do begin
        readln(r);
        a[i]:=round(r*100);
        if j<a[i] then j:=a[i];
    end;
    i:=1; r:=0;
    while i<=j do begin
        m:=(i+j) div 2;
        t:=cut(m);
        if t>=k then begin i:=m+1; r:=m end else j:=m-1;
    end;
    writeln(r/100:0:2);
end.
[百宝箱] [返回首页] [上级目录] [根目录] [返回顶部] [刷新] [返回]
Powered by KBS BBS 2.0 (http://dev.kcn.cn)
页面执行时间:2.806毫秒