93,wa8,已经交了两页了QAQ
  • 板块P1577 切绳子
  • 楼主Muly
  • 当前回复3
  • 已保存回复3
  • 发布时间2021/12/18 16:10
  • 上次更新2023/10/28 14:10:50
查看原帖
93,wa8,已经交了两页了QAQ
249620
Muly楼主2021/12/18 16:10
#include<bits/stdc++.h>
using namespace std;
#define ll long long
#define MP make_pair
#define SZ(X) ((int)(X).size())
typedef pair<int, int> PII;
const int INF = 0x3f3f3f3f;
const int N = 1e6 + 10;
int n,k;
double a[N],maxx;
double find(double l, double r) {
    const double eps = 1e-2;
    while(r - l > eps) {
        int sum = 0;
        double mid = (l + r) / 2;
        for(int i = 0;i < n;i ++) sum += int(a[i] / mid);
        if(sum >= k) l = mid;
        else r = mid;
    }
    return l;
}
int main(){
#ifdef LOCAL
   freopen("in.in","r",stdin);
   freopen("out.out","w",stdout);
#endif
//-----------------------------------------------------------------------------------------------------------------------------------
    cin >> n >> k;
    for(int i = 0;i < n;i ++) cin >> a[i],maxx = max(maxx,a[i]);
    double res = find(0, maxx);
    printf("%.2lf", floor(res * 100) / 100.00);
    return 0;
}
2021/12/18 16:10
加载中...