函数的概念与OI

复健,好久没写博客了。

函数的概念:

 我一开始对 $B$ 的存在感到疑惑,直接用值域来定义不美滋滋?加个 $B$ 在其中岂不是多此一举?

想了很久,终于想通了。值域是函数的难点,王中王级别的东西,如果很快求出或表示了它,那函数就是 trivial 的。

所以历代的数学家们想出了一个方法,讲问题简单化,先用求出 $B$,再来缩小范围,寻找答案。

那这个跟 OI 有关系?我认为这是一种思想,就是将问题简单化,泛化,再步步紧逼,得出答案。

 

CF793F

这题有吉司机线段树做法,但不在本文讨论范围内。

首先暴力是简单的,考虑优化。

分块,自然想到设 $f_{i,j}$ 表示 $i$ 到第 $j$ 块的答案。

显然这个是不好直接求的,不然为啥 3000分的ds。

考虑函数的概念,将问题泛化,简单化。

设 $g_{i,j}$ 表示 $i$ 直接 到前 $j$ 块的答案,这个直接前缀更新一下即可。

现在考虑如何用 $g$ 数组更新出 $f$。

简单的柿子:

 $f_{i,j}=max(g_{i,j},f_{k,j}   i<k<=g_{i,j} )$

然后考虑倒叙枚举 $i$,利用单调栈维护最值即可。

posted @ 2023-06-29 22:35  Hanghang007  阅读(59)  评论(1)    收藏  举报