zoukankan      html  css  js  c++  java
  • 【模板】三分法

    【模板】三分法

    话说我是直接按lyd的书上直接学的,感觉很直观,那些奇奇怪怪的二分求导之类的,黄金比例分割之类的,感觉有点麻烦

    能用就可以了,也不算慢

    Code:

    #include <cstdio>
    const double eps=1e-7;
    double a[15];
    int n;
    double f(double x)
    {
        double s=0,p=1;
        for(int i=n+1;i;i--)
        {
            s+=a[i]*p;
            p*=x;
        }
        return s;
    }
    int main()
    {
        double l,r;
        scanf("%d%lf%lf",&n,&l,&r);
        for(int i=1;i<=n+1;i++) scanf("%lf",a+i);
        while(l+eps<r)
        {
            double ll=l+(r-l)/3.0,rr=r-(r-l)/3.0;
            if(f(ll)<f(rr)) l=ll;
            else r=rr;
        }
        printf("%.5lf
    ",l);
        return 0;
    }
    

    2018.9.6

  • 相关阅读:
    String和stringbuffer
    项目中Orcale存储过程优化记录
    大数据项目中的Oracle查询优化
    洛谷P3402 可持久化并查集
    Gym
    CodeForces
    Gym
    Gym
    UVA
    Kattis
  • 原文地址:https://www.cnblogs.com/butterflydew/p/9596233.html
Copyright © 2011-2022 走看看