zoukankan      html  css  js  c++  java
  • 【模板整合计划】计算几何

    【模板整合计划】计算几何

    一:【计算几何全家桶】

    二:【自适应辛普森积分】

    1.【自适应辛普森积分 1】

    【模板】自适应辛普森法 (1) ( ext{[P4525]})

    (局部精度)

    #include<algorithm>
    #include<cstdio>
    #include<cmath>
    #define LD double
    #define LL long long
    #define Re register int
    #define Vector Point
    using namespace std;
    const LD eps=1e-7;
    inline int dcmp(LD a,LD eps){return a<-eps?-1:(a>eps?1:0);}
    LD a,b,c,d,L,R;
    inline LD F(LD x){return (c*x+d)/(a*x+b);}
    inline LD Simpson(LD L,LD R){return (R-L)*(F(L)+4.0*F((L+R)*0.5)+F(R))/6.0;}
    inline LD sakura(LD L,LD R,LD now,LD eps){
        LD mid=(L+R)*0.5,FL=Simpson(L,mid),FR=Simpson(mid,R);
        if(!dcmp(now-FL-FR,eps))return now;
        return sakura(L,mid,FL,eps/2)+sakura(mid,R,FR,eps/2);
    }
    int main(){
    //    freopen("123.txt","r",stdin);
        scanf("%lf%lf%lf%lf%lf%lf",&a,&b,&c,&d,&L,&R);
        printf("%lf
    ",sakura(L,R,Simpson(L,R),eps));
    }
    

    (全局精度)

    #include<algorithm>
    #include<cstdio>
    #include<cmath>
    #define LD double
    #define LL long long
    #define Re register int
    #define Vector Point
    using namespace std;
    const LD eps=1e-13;
    inline int dcmp(LD a){return a<-eps?-1:(a>eps?1:0);}
    LD a,b,c,d,L,R;
    inline LD F(LD x){return (c*x+d)/(a*x+b);}
    inline LD Simpson(LD L,LD R){return (R-L)*(F(L)+4.0*F((L+R)*0.5)+F(R))/6.0;}
    inline LD sakura(LD L,LD R,LD now){
        LD mid=(L+R)*0.5,FL=Simpson(L,mid),FR=Simpson(mid,R);
        if(!dcmp(now-FL-FR))return now;
        return sakura(L,mid,FL)+sakura(mid,R,FR);
    }
    int main(){
    //    freopen("123.txt","r",stdin);
        scanf("%lf%lf%lf%lf%lf%lf",&a,&b,&c,&d,&L,&R);
        printf("%lf
    ",sakura(L,R,Simpson(L,R)));
    }
    

    2.【自适应辛普森积分 2】

    【模板】自适应辛普森法 (2) ( ext{[P4526]})

    还没学,先咕着。

  • 相关阅读:
    [Luogu] 借教室
    [Luogu] 子共七
    [Luogu] 让我们异或吧
    【bzoj1030】[JSOI2007]文本生成器
    HDU3068 最长回文
    【bzoj2342】[Shoi2011]双倍回文
    【NOIP2012】借教室
    HDU2203 亲和串
    【POJ2001】Shortest Prefixes
    vodevs3031 最富有的人
  • 原文地址:https://www.cnblogs.com/Xing-Ling/p/12952539.html
Copyright © 2011-2022 走看看