1 条题解
-
0
自动搬运
来自洛谷,原作者为

GKxx
欲买桂花同载酒,终不似,少年游。搬运于
2025-08-24 22:00:27,当前版本为作者最后更新于2019-02-03 15:53:56,作者可能在搬运后再次修改,您可在原文处查看最新版自动搬运只会搬运当前题目点赞数最高的题解,您可前往洛谷题解查看更多
以下是正文
本蒟蒻第一次做这种亦可赛艇的DP优化...
真是妙不可言啊
首先我们有一个暴力的DP:表示前个数取值域范围的所有不同合法序列的值之和。但是这样转移并不方便。我们可以只考虑递增的序列,考虑第个数取不取,于是有转移
最后对于每个递增序列都可以任意重排,所以答案是。
这样做的复杂度是的,并不能通过,需要优化。
首先你要知道一个定理:平面上横坐标不同的任意个点可以唯一确定一个次数不高于的多项式,可以使用拉格朗日插值公式来确定:
$$p(x)=\sum\limits_{i=0}^ny_i\prod\limits_{j\neq i}\frac{x-x_j}{x_i-x_j} $$假设是关于的次多项式,我们来推导的表达式。
注意到:如果是次多项式,那么差分是次多项式。证明比较显然。
然后我们发现的转移方程里有差分的形式:
观察这个式子。左边是关于的次多项式,右边是关于的次多项式,于是我们有
当时显然有
不难发现是等差数列,得到
利用数学归纳法直接按照转移方程归纳也可以证明,但我这里是在未知结论的情况下正面推导的。
既然是关于的次多项式,我们就不需要求出,只要求出到,就有了个点,利用拉格朗日插值即可插出的值。
直接利用拉格朗日插值公式是的,当横坐标是连续的整数的时候可以预处理前缀积和后缀积来优化到,另外就算横坐标不是连续的整数我们也可以用一些玄妙的做法快速插值。但是本题,就随意啦
代码比较简单,就不贴了。
- 1
信息
- ID
- 3430
- 时间
- 3000ms
- 内存
- 500MiB
- 难度
- 6
- 标签
- 递交数
- 0
- 已通过
- 0
- 上传者