专栏首页数据结构与算法洛谷P4526 【模板】自适应辛普森法2(simpson积分)

洛谷P4526 【模板】自适应辛普森法2(simpson积分)

题目描述

计算积分

保留至小数点后5位。若积分发散,请输出"orz"。

输入输出格式

输入格式:

一行,包含一个实数,为a的值

输出格式:

一行,积分值或orz

输入输出样例

输入样例#1: 复制

2.33

输出样例#1: 复制

1.51068

说明

a<=50

请注意时空限制。

观察到函数具有极强的收敛性

然后估算一下上界,直接上辛普森积分

// luogu-judger-enable-o2
#include<cstdio>
#include<cmath>
double a;
double F(double x) {
    return pow(x, a / x - x);
}
double sim(double l, double r) {
    return (F(l) + F(r) + 4 * F((l + r) / 2)) * (r - l) / 6;
}
double asr(double L, double R, double eps, double ans) {
    double mid = (L + R) / 2;
    double LL = sim(L, mid), RR = sim(mid, R);
    if(fabs(LL + RR - ans) <= 15 * eps) return LL + RR;
    return asr(L, mid, eps / 2, sim(L, mid)) + asr(mid, R, eps / 2, sim(mid, R));
}
main() {
    #ifdef WIN32
    freopen("a.in", "r", stdin);
    #endif
    scanf("%lf", &a);
    if(a < 0) {printf("orz");return 0;}
    printf("%.5lf", asr(1e-9, 20, 1e-7, sim(0, 20)));
} 

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 洛谷P4525 【模板】自适应辛普森法1(simpson积分)

    $$\int_a^bf(x)dx\approx\frac{(b-a)(f(a)+f(b)+4f(\frac{a+b}{2}))}{6}$$

    attack
  • 洛谷P1337 [JSOI2004]平衡点 / 吊打XXX(模拟退火)

    attack
  • POJA Star not a Tree?(模拟退火)

    attack
  • 基础篇- iOS开发中常用的数学函数

    進无尽
  • c++(三)

    函数在调用之前必须进行声明或者定义,函数的声明:返回值类型 函数名(参数类型 参数名称.......);其中参数名称可以省略;

    Dar_Alpha
  • 2020年最新阿里和美团面经

    阿里,31号电面,2020年元旦中午1点在线编程。最后挂了,面试官大哥说等我工作满三年再捞我

    Java学习录
  • Java工具集-数学(立方体操作工具类)

    cwl_java
  • C编程常用数学函数集锦

    double sqrt(double x) 返回x的开方 double cos(double x) 返回x的余弦cos(x)值,x为弧度 double si...

    苦咖啡
  • C# double 好用的扩展

    在很多代码需要使用数学计算,在用到 double 很难直接判断一个值是 0 或者 1 ,判断两个值相等。 本文提供一个数学扩展,让大家可以简单使用到 doubl...

    林德熙
  • 使用GDAL实现DEM的地貌晕渲图(三)

    之前在《使用GDAL实现DEM的地貌晕渲图(一)》和《使用GDAL实现DEM的地貌晕渲图(二)》这两篇文章中详细介绍了DEM生成地貌晕渲图的原理与实现。不过之前...

    charlee44

扫码关注云+社区

领取腾讯云代金券