函数的概念与OI
复健,好久没写博客了。
函数的概念:

我一开始对 $B$ 的存在感到疑惑,直接用值域来定义不美滋滋?加个 $B$ 在其中岂不是多此一举?
想了很久,终于想通了。值域是函数的难点,王中王级别的东西,如果很快求出或表示了它,那函数就是 trivial 的。
所以历代的数学家们想出了一个方法,讲问题简单化,先用求出 $B$,再来缩小范围,寻找答案。
那这个跟 OI 有关系?我认为这是一种思想,就是将问题简单化,泛化,再步步紧逼,得出答案。

这题有吉司机线段树做法,但不在本文讨论范围内。
首先暴力是简单的,考虑优化。
分块,自然想到设 $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$,利用单调栈维护最值即可。

浙公网安备 33010602011771号