hihocoder #1142 : 三分·三分求极值

Posted kls123

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了hihocoder #1142 : 三分·三分求极值相关的知识,希望对你有一定的参考价值。

链接:http://hihocoder.com/problemset/problem/1142

 

思路:

三分模板题

实现代码:

#include<bits/stdc++.h>
using namespace std;
#define ll long long
const int M = 1e5 + 10;
#define eps 1e-8
int a,b,c,x,y;
double getsum(double x1){  //获取y的值
    return a*x1*x1+b*x1+c;
}

double getdis(double k){   //当前点离p点的距离
    return (k-x)*(k-x)+(getsum(k)-y)*(getsum(k)-y);
}

void Three_search(){
    double l = -200, r = 200;
    while(l + eps < r){
        double m1 = l+(r-l)/3;
        double m2 = r-(r-l)/3;
        if(getdis(m1) < getdis(m2))
            r = m2;
        else
            l = m1;
    }
    double ans = getdis(l);
    ans = sqrt(ans);
    printf("%.3lf
",ans);
}

int main()
{
    cin>>a>>b>>c>>x>>y;
    Three_search();
}

 

以上是关于hihocoder #1142 : 三分·三分求极值的主要内容,如果未能解决你的问题,请参考以下文章

HIHOCODER 1142 三分·三分求极值

hihoCoder #1142 : 三分求极值

HihoCoder 1142-三分求极值(三分模板)

HihoCoder #1467 : 2-SAT·hihoCoder音乐节

hihocoder #1467 : 2-SAT·hihoCoder音乐节 2-SAT

hihocoder #1468 : 2-SAT·hihoCoder新春晚会 2-SAT