UVALive - 5009 Error Curves (三分)
2017-08-16 18:21
309 查看
#include<cstdio>
#include<cstdlib>
#include<cstring>
#include<iostream>
#include<cmath>
#include<string>
#include <bits/stdc++.h>
using namespace std;
typedef long long LL;
const int N =1e5+10;
const int inf = 0x3f3f3f3f;
struct node
{
double a, b, c;
}p
;
int n;
double get(double x)
{
double ans=0;
ans=p[0].a*x*x+p[0].b*x+p[0].c;
for(int i=1;i<n;i++) ans=max(ans,p[i].a*x*x+p[i].b*x+p[i].c);
return ans;
}
int main()
{
int t;
scanf("%d", &t);
while(t--)
{
scanf("%d", &n);
for(int i=0;i<n;i++) scanf("%lf %lf %lf", &p[i].a, &p[i].b, &p[i].c);
double l=0, r=1000, ans;
for(int i=0;i<100;i++)
{
double x1=l+(r-l)/3, x2=(r-(r-l)/3);
double y1=get(x1), y2=get(x2);
if(y1<y2) ans=y1,r=x2;
else ans=y2,l=x1;
}
printf("%.4f\n",ans);
}
return 0;
}
#include<cstdlib>
#include<cstring>
#include<iostream>
#include<cmath>
#include<string>
#include <bits/stdc++.h>
using namespace std;
typedef long long LL;
const int N =1e5+10;
const int inf = 0x3f3f3f3f;
struct node
{
double a, b, c;
}p
;
int n;
double get(double x)
{
double ans=0;
ans=p[0].a*x*x+p[0].b*x+p[0].c;
for(int i=1;i<n;i++) ans=max(ans,p[i].a*x*x+p[i].b*x+p[i].c);
return ans;
}
int main()
{
int t;
scanf("%d", &t);
while(t--)
{
scanf("%d", &n);
for(int i=0;i<n;i++) scanf("%lf %lf %lf", &p[i].a, &p[i].b, &p[i].c);
double l=0, r=1000, ans;
for(int i=0;i<100;i++)
{
double x1=l+(r-l)/3, x2=(r-(r-l)/3);
double y1=get(x1), y2=get(x2);
if(y1<y2) ans=y1,r=x2;
else ans=y2,l=x1;
}
printf("%.4f\n",ans);
}
return 0;
}
相关文章推荐
- Error Curves(三分)uvalive 5009 求下凸 (最大值的最小值)
- uvalive 5009 Error Curves
- UVALive - 5009 Error Curves (三分法)
- uvalive5009(三分)
- UVALive 7509 三分
- UVALive 7509 三分
- LA 5009 (HDU 3714) Error Curves (三分)
- (转)三分问题 + UVALive 6954 Euclidean TSP
- G - Dome of Circus UVALive - 4986 (三分)
- UVA 1476 A - Error Curves——三分
- UVALive 7509 三分
- UVALive 5009
- UVALive 7509 三分
- Uva - 1476 - Error Curves(三分)
- UVALive 7509 三分
- UVA - 1476 Error Curves (三分搜索)
- UVALive 6694 - Toy Boxes(枚举+三分)
- UVALive 7509 三分
- la 5009 - Error Curves(三分)
- UVALive 7509 三分