三分

news/2024/11/22 20:16:07/

【例题引入】

例题传送门三分法

题目大意:给出一个N次函数,保证在范围 [ l,r ] 内存在一点x,使得 [ l,x ] 上单调增[ x,r ] 上单调减。试求出x的值。(洛谷 3382)

这道题,若没学三分,第一个想法应该是用二分,但是二分出来的答案不好判断是否合法(至少本蒟蒻不知道怎么判断)

这个时候我们想到三分,三分法一般适用于求单峰函数极值的一些东西

 

【基本思想】

其实三分和二分的做法差不多,只不过二分是找 [ l,r ] 间的中点,三分是找 [ l,r ] 间的三等分点

那么 m1 = l + ( r - l ) / 3 , m2 = r - ( r - l ) / 3

我们将两个点中更优的点叫做好点(若计算单峰函数的最大值,则函数值更大的那个点就为好点;若计算单峰函数的最小值,则函数值更小的那个点就为好点),另一个叫做坏点,如下图:

上图中,我们用 m1 代替 mid,m2 代替 mmid

很显然,m1 是好点,m2 是坏点

又因为在 [ l,r ] 中这是单峰函数,所以最优点和好点应在坏点同侧(可以自己画图理解),那缩小范围的时候就把 r 改成 m2 ,即我们的求解区间从 [ l,r ] 变为 [ l,m2 ] ,不断缩小范围直到求出解

 

【代码】

(其实三分不是一种常用的算法,大家了解一下就行了)

#include<cstdio>
#include<cstring>
#include<algorithm>
using namespace std;
const double eps=1e-12;
int n;
double a[15],w[15];
double f(double x)
{int i;double pow=1,ans=0;for(i=n+1;i>=1;--i){ans+=a[i]*pow;pow*=x;}return ans;
}
int main()
{int i;double l,r,m1,m2;scanf("%d",&n);scanf("%lf%lf",&l,&r);for(i=1;i<=n+1;++i)scanf("%lf",&a[i]);while(r-l>=eps){m1=l+(r-l)/3;m2=r-(r-l)/3;if(f(m2)-f(m1)>=eps)l=m1;elser=m2;}printf("%.5lf",l);return 0;
}

http://www.ppmy.cn/news/643784.html

相关文章

拉伯证券|新能源汽车前11月产销翻倍,渗透率升至三分之一

2022年11月&#xff0c;国内新能源轿车渗透率已升至33.8%&#xff0c;创前史新高。 2022年的最终一个交易日早盘&#xff0c;两市高开高走&#xff0c;沪指涨0.61%&#xff0c;深证成指涨0.35%&#xff0c;创业板指涨0.3%。板块上来看&#xff0c;Web3.0、虚拟人、网络游戏概念…

基于MATLAB的频谱、能量谱、三分之一倍频程分析

目录 1. 相关概念介绍 2. 代码实现 3. 场景仿真&#xff1a; 【若觉文章质量良好且有用&#xff0c;请别忘了点赞收藏加关注&#xff0c;这将是我继续分享的动力&#xff0c;万分感谢&#xff01;】 1. 相关概念介绍 以信号为例&#xff0c;信号在时域下的图形可以显示信号…

三分之一倍频程谱

三分之一倍频程谱是一种频率分析方法&#xff0c;它具有谱线少频带宽的特点。 倍频程实际上是频域分析中频率的一种相对尺度。倍频程谱是由一系列频率点以及对应这些频率点附近的频带内信号的平均幅值&#xff08;有效值&#xff09;所构成。这些频率点称为中心频率fc&#xf…

Redis为什么是单线程的

为什么需要多线程 首先&#xff0c;现在的CPU一般都是由多个核心组成&#xff0c;每个核心可以认为是一个独立的处理器&#xff0c;它们能够并行地处理任务。所以&#xff0c;如果我们的CPU是多核的&#xff0c;但是程序是单线程的&#xff0c;那么执行程序时&#xff0c;这个…

Linux防火墙学习和案例操作,作为优秀的运维人员,你的学会了吗

目录 1. 什么是Linux防火墙&#xff1f;它的作用是什么&#xff1f;2. Linux防火墙有哪些常用的工具和服务&#xff1f;3. 如何在Linux中开放一个端口&#xff1f;4. 如何在Linux中关闭一个端口&#xff1f;5. 如何配置Linux防火墙规则以允许特定IP地址或IP范围访问&#xff1f…

html5物理引擎对比,GTA历代作品物理引擎大PK!玩家对比后发现,原来4代这么厉害?...

01 侠盗猎车手简介—— 如果有读者非常喜爱角色扮演题材游戏&#xff0c;那么你们一定会知道&#xff0c;在游戏界&#xff0c;有一款名为侠盗猎车手的游戏非常出名&#xff0c;它真实有趣&#xff0c;并且在自由度方面非常有着非常高的造诣&#xff0c;因为品质足够高&#xf…

沙盒游戏发展史

沙盒游戏发展史 说起沙盒游戏&#xff0c;大家或许马上就会想到《我的世界》&#xff0c;除此之外&#xff0c;你还知道有哪些沙盒游戏吗&#xff1f;沙盒游戏是如何发展起来的呢&#xff1f;它的未来又将走向何方&#xff1f; 沙盒游戏的起源与内涵 严格来说&#xff0c;沙…

Facebook更名Meta,扎克伯格押注元宇宙

Facebook周四&#xff08;10月28日&#xff09;宣布&#xff0c;将把公司名称改为“Meta”。Meta这个词来自希腊语&#xff0c;意思是超越&#xff0c;也是metaverse&#xff08;元宇宙&#xff09;缩写&#xff0c;代表着元宇宙未来的无限可能。 这一更名是在“Facebook Conn…