93分 第12个没过 求指导
  • 板块P1577 切绳子
  • 楼主che_zha
  • 当前回复0
  • 已保存回复0
  • 发布时间2024/7/12 15:20
  • 上次更新2024/7/12 16:06:45
查看原帖
93分 第12个没过 求指导
715004
che_zha楼主2024/7/12 15:20
#include<bits/stdc++.h>
using namespace std;
const int N=10001;
int  n,k,l[N];
double d[N];
bool ch(int middle){
	int c=0;
	for(int i=0;i<n;i++){
		c+=l[i]/middle;	
		}
	if(c<k){
		return true; 
	}else{
		return false;
	}
	}
double Slove(){
	int left=0,right=l[n-1],middle;
	while(left<=right){
		 middle=(left+right)/2;
		if(middle==0){
			break;
		}
		if(ch(middle)){
			right=middle-1;
	
		}else{
			left=middle+1;
		}
	}
	return middle;
}
int main()
{
	cin>>n>>k;
	for(int i=0;i<n;i++){
		cin>>d[i];
		l[i]=d[i]*100;
	}
	sort(l,l+n);
	printf("%.2f\n",Slove()/100.0);
    return 0;
}
2024/7/12 15:20
加载中...