参考了 Itst 的博客。所以你的学习笔记就是把原文抄一遍吗
首先定义 “满足四边形不等式的序列划分问题”:
给出 \(n,k\) 和一个 \((n+1)×(n+1)\) 的矩阵 \(c_{i,j}\),你需要给出一个长度为 \(k+1\) 的序列 \(p_0=0<p_1<p_2<…<p_{k−1}<p_k=n\),定义该序列的价值为 \(∑_{i=1}^k c_{p_{i−1},p_i}\)。你需要求出所有合法的序列的最小价值。
其组合意义是显然的,\(p\) 序列给出了序列划分的位置,区间 \([i,j]\) 的权值为 \(c_{i,j}\)。需要注意的是,权值矩阵 \(c\) 在题目中一般不会显式地给出,这要求我们能够较快地对给定的区间信息进行查询。
另一个理解的角度是将序列看做一条链,\(i \to j\) 的边权值为 \(c_{i,j}\),所求即为 \(1 \to n\) 的最短路长度,因此该类问题也被称作 “满足四边形不等式的链上路径问题”。
其中矩阵 \(c\) 满足四边形不等式,即 \(∀i<j≤k<l,c_{i,k}+c_{j,l}≤c_{i,l}+c_{j,k}\)。
先给出结论:设当 \(k=p(p∈[1,n−1])\) 时答案为 \(f(p)\),\(f'(p)(p∈[2,n−1])=f(p−1)−f(p)\),则 \(f'(p)\) 单调不增,即 \(∀q∈[3,n−1],f'(q)≤f'(q−1)\)。
为此我们需要证明一个稍强一些的结论:
引理:\(∀1≤s<r<t≤n−1,f(r)+f(s+t−r)≤f(s)+f(t)\)。
证明:
设序列 \(P\) 为 \(f(s)\) 对应的最优解,序列 \(Q\) 为 \(f(t)\) 对应的最优解,\(\Delta=r−s\)。根据鸽巢原理可知存在 \(x∈[0,s−1]\) 满足 \(P_x<Q_{x+\Delta}<Q_{x+\Delta+1}≤P_{x+1}\)。此时考虑两个序列 \(R= \{ P_0,P_1,…,P_x,Q_{x+\Delta+1},…,Q_t \},S=\{ Q_0,Q_1,…,Q_{x+\Delta},P_{x+1},…,P_s \}\)。显然 \(R\) 和 \(S\) 分别是 \(k=s+t−r\) 和 \(k=r\) 的一组合法解。
设某个序列 \(X\) 的权值为 \(w(X)\),那么有
\[w(R)+w(S)−w(P)−w(Q)=c_{P_x,Q_{x+\Delta+1}}+c_{Q_{x+\Delta},P_{x+1}}−(c_{P_x,P_{x+1}} + c_{Q_{x + \Delta},Q_{x+\Delta+1}}) \]而根据四边形不等式上式 \(≤0\),同时因为 \(f(r)+f(s+t−r)≤w(R)+w(S)\),故 \(f(r)+f(s+t−r)≤f(s)+f(t)\),结论成立。
在引理中令 \(s = x-1,t = x+1,r = x\) 可得 \(f(x) + f(x) \leq f(x-1) + f(x+1)\),即 \(f(x−1)−f(x)≥f(x)−f(x+1)\),即 \(f'(x)≥f'(x+1)\),故结论成立。
这意味着答案对于段数是一个下凸的函数,可以使用 WQS 二分等凸优化技巧优化。
标签:浅谈,不等式,权值,凸性,满足,Delta,序列,四边形 From: https://www.cnblogs.com/came11ia/p/16638956.html