被hack求助
  • 板块P1883 函数
  • 楼主xycsc23
  • 当前回复0
  • 已保存回复0
  • 发布时间2024/10/25 10:11
  • 上次更新2024/10/25 12:51:25
查看原帖
被hack求助
1260978
xycsc23楼主2024/10/25 10:11
#include<bits/stdc++.h>
using namespace std;
#define int long long
#define pr pair<int,int>
#define mr(x, y) make_pair((x), (y))
#define fi first
#define se second
int read(){
	int f=1, s=0;
	char c=getchar();
	while((c<'0' || c>'9') && c!='-')c=getchar();
	if(c=='-')
		f=-1, c=getchar();
	while(c>='0' && c<='9')s=s*10+c-'0', c=getchar();
	return f*s;
}
void pu(int x){
	if(x<0){
		putchar('-');
	    pu(-x);
	}
	else if(x<10)
		putchar(x+'0');
	else{
		pu(x/10);
		putchar(x%10+'0');
	}
}
#define exp 1e-9
struct hs{
	int a;
	int b;
	int c;
}a[10005];
int n;
double F(double x){
	double ma=-114514;
	for(int i=0;i<n;i++)
		ma=max(ma, a[i].a*x*x+a[i].b*x+a[i].c);
	return ma;
}
signed main(){
	int T=read();
	while(T--){
		n=read();
		for(int i=0;i<n;i++)
			a[i].a=read(), a[i].b=read(), a[i].c=read();
		double l=0, r=1000;
		while(r-l>exp){
			double mid=(r+l)/2;
			double ls=F(mid-exp), rs=F(mid+exp);
			if(ls>rs)
				l=mid;
			else if(ls<rs)
				r=mid;
		}
		printf("%.4f\n", F(l));
	}
	return 0;
}

提交记录

2024/10/25 10:11
加载中...