14 条题解

  • 0
    @ 2026-5-15 12:10:55
    #include <bits/stdc++.h>
    using namespace std;
    #define ll long long
    ll n,m,a[200000],k;
    double x,maxn;
    int main(){
        cin>>n>>m;
        for(int i=1;i<=n;i++){
            cin>>x;
            a[i]=x*1000;
            k=max(k,a[i]);
        }
        ll l=1,r=k;
        while(l<=r){
            ll s=0;
            ll mid=l+(r-l)/2;
            for(int i=1;i<=n;i++) s=s+a[i]/mid;
            if(s>=m) l=mid+1,maxn=mid;
            if(s<m) r=mid-1;
        }
        printf("%.2lf",(maxn/10.0)/100.0);
        return 0;
    }
    

    信息

    ID
    381
    时间
    1000ms
    内存
    256MiB
    难度
    10
    标签
    递交数
    1
    已通过
    0
    上传者