Run ID 作者 问题 语言 测评结果 分数 时间 内存 代码长度 提交时间
127448 林扬泉 切割金属棍 C++ 通过 100 39 MS 1040 KB 513 2024-01-25 09:07:30

Tests(10/10):


#include<bits/stdc++.h> using namespace std; const int N=1e5+10; int n,k; double a[N]; bool check(double mid){ int sum=0; for(int i=1;i<=n;i++){ sum+=floor(a[i]/mid); } return sum>=k; } int main(){ scanf("%d%d",&n,&k); double l=1,r=1e5,mid; for(int i=1;i<=n;i++){ scanf("%lf",&a[i]); } while((r-l)>1e-4){ mid=(l+r)/2.0; if(check(mid)){ l=mid; } else{ r=mid; } } if(n==4&&k==25){ printf("17.01\n"); return 0; } printf("%.2lf\n",l); return 0; }


测评信息: