社区讨论

86求调

P1577切绳子参与者 2已保存回复 3

讨论操作

快速查看讨论及其快照的属性,并进行相关操作。

当前回复
3 条
当前快照
1 份
快照标识符
@mivrpxrh
此快照首次捕获于
2025/12/07 21:38
3 个月前
此快照最后确认于
2025/12/10 22:05
3 个月前
查看原帖
测3和测12
CPP
#include<bits/stdc++.h>
using namespace std;
double a[10009],d,ans;
int n,k;
bool check(double s)
{
	int z=0;
	for(int i=1;i<=n;i++)
		z+=(int)a[i]/s;
	return z>=k;
}
int main()
{
	cin>>n>>k;
	for(int i=1;i<=n;i++)
	{
		cin>>a[i];
		d=max(d,a[i]);
	}
	double l=0,r=d;
	while(l+0.01<r)
	{
		double mid=(l+r)/2.0;
		if(mid==0)break;
		if(check(mid)){l=mid;ans=mid;}
		else r=mid;
	}
	cout<<fixed<<setprecision(2)<<ans;
	return 0;
} 

回复

3 条回复,欢迎继续交流。

正在加载回复...