93pts求助
  • 板块P1577 切绳子
  • 楼主lxc129
  • 当前回复0
  • 已保存回复0
  • 发布时间2024/6/3 21:51
  • 上次更新2024/6/4 21:51:49
查看原帖
93pts求助
1126733
lxc129楼主2024/6/3 21:51
#include<bits/stdc++.h>
using namespace std;
int n,k,a[100005],maxn,l,r,mid,cnt,i;
double p;
int main(){
	cin>>n>>k;
	for(i=1;i<=n;i++){ 
		cin>>p; 
		a[i]=int(p*100);
		maxn=max(a[i],maxn); 
	}
	r=maxn;
	while(l<=r){
		mid=(l+r)/2;
		cnt=0;
		for(i=1;i<=n;i++) cnt+=int(a[i]/mid);
		if(cnt>=k) l=mid+1;
		if(cnt<k) r=mid-1; 
	}
	printf("%.3lf",(l-1)/100.0);
}

#$$5$$RE

2024/6/3 21:51
加载中...