站外题求捞
  • 板块灌水区
  • 楼主zhangyafei
  • 当前回复0
  • 已保存回复1
  • 发布时间2024/8/20 12:55
  • 上次更新2024/8/20 15:28:54
查看原帖
站外题求捞
945688
zhangyafei楼主2024/8/20 12:55

90分代码:

#include<bits/stdc++.h>
using namespace std;
int n;
long double k,a[10005];
//绳子
long long f(long double x){//个数
	long long cnt=0;
	for(int i=1;i<=n;i++){
		cnt+=a[i]/x;
	}
	return cnt;
}
int main(){
	cin>>n>>k;
	long double sum=0,ans;
	for(int i=1;i<=n;i++){
		cin>>a[i];
		sum+=a[i];
	}
	long double l=0,r=sum/k;
	ans=r;
	long double mid=(l+r)/2;
	long double e=1e-8;
	while(r-l>e){
		mid=(l+r)/2;
		if(f(mid)>=k){
			ans=mid;
			l=mid;
		}else{
			r=mid;
		}
	}
	cout<<ans<<endl;
	return 0;
}
2024/8/20 12:55
加载中...