93分求教orz!!!!
  • 板块P1577 切绳子
  • 楼主yuanzijin
  • 当前回复0
  • 已保存回复0
  • 发布时间2024/12/24 12:59
  • 上次更新2024/12/24 19:04:32
查看原帖
93分求教orz!!!!
1073314
yuanzijin楼主2024/12/24 12:59
#include <bits/stdc++.h>
using namespace std;
const int M=50011;
const double inf=100001;
int l,n,now,sum;
double a[M],L,R,mid,ans;
bool judge(double x)
{
	sum=0;
	for(int i=1;i<=n;i++) sum+=floor(a[i]/x);
//	printf("%.2lf %d\n",x,sum);
	if(sum>=l) return 1;
	else return 0;
}
int main()
{
	scanf("%d%d",&n,&l);
	for(int i=1;i<=n;i++) scanf("%lf",&a[i]);
	L=0;
	R=inf;
	while(L<=R)
	{
		mid=(L+R)/2;
		if(judge(mid)==1)
		{
			ans=mid;
			L=mid+0.01;
		}
		else R=mid-0.01;
	}
	printf("%.2lf",ans);
	return 0;
}
2024/12/24 12:59
加载中...