1 条题解
-
0
#include <bits/stdc++.h> using namespace std; using LL=long long; const double eps=1e-9; LL n,a[100006],b[100006],c[100006],t; double solve (double mid) { double ans=-1e9; for (LL i=1;i<=n;++i) { ans=max(ans,1.0*a[i]*mid*mid+b[i]*mid+c[i]); } return ans; } int main(){ ios::sync_with_stdio(0); cin.tie(0); cout.tie(0); cin>>t; while (t--) { cin>>n; for (LL i=1;i<=n;++i) { cin>>a[i]>>b[i]>>c[i]; } double l=0,r=1000; while (r-l>=eps) { double mid1=l+(r-l)/3,mid2=r-(r-l)/3; if (solve(mid1)<=solve(mid2)) { r=mid2; }else { l=mid1; } } printf("%.4lf\n",solve(l)); } return 0; }
- 1
信息
- ID
- 1869
- 时间
- 1000ms
- 内存
- 512MiB
- 难度
- 9
- 标签
- (无)
- 递交数
- 15
- 已通过
- 3
- 上传者