77分求助!!!
  • 板块P1577 切绳子
  • 楼主slry666
  • 当前回复2
  • 已保存回复2
  • 发布时间2023/9/10 19:34
  • 上次更新2023/11/2 21:34:18
查看原帖
77分求助!!!
671482
slry666楼主2023/9/10 19:34
#include<bits/stdc++.h>
using namespace std;
int n,x;
double sum,r=0,l=1,a[100050];
double check(double t){
	int ans=0;
	for(int i=1;i<=n;i++){
		if(a[i]<t) continue;
		ans+=((a[i]/t)*100/100);
	}if(ans>=x) return 1;
	else return 0;
}
int main(){
	cin>>n>>x;
	for(int i=1;i<=n;i++){
		scanf("%lf",&a[i]);
		r=max(r,a[i]);
	}while(l<=r){
		double mid=(l+r)/2;
		if(check(mid)==true){
			sum=mid;
			l=mid+0.01;
		}else r=mid-0.01;
	}if(sum==0.0000000) cout<<"0.00";
	else printf("%lf",sum);
}

最后两个点没过

2023/9/10 19:34
加载中...