在满足花费最小化的前提下,一定存在一种构造B的方案,使得B中的每个数都是A序列中的数
证明:数学归纳法
以单调不降为例
当 n=1n=1n=1 时,结论显然成立
假设 n=k−1n=k-1n=k−1 时结论成立,则当 n=kn=kn=k 时:
若 Ak≥Bk−1A_k \ge B_{k-1}Ak≥Bk−1 则可以不动 AkA_kAk ,单调性以及正确性显然
若 Ak<Bk−1 A_k <B_{k-1}Ak<Bk−1 则可以发现只能在这种为维护单调性而调整的方式中寻找最优解:
令 i∈[1,k−1]i \in [1,k-1]i∈[1,k−1] 让 iii 之后的所有元素(包括 AkA_kAk )全部变为 xxx ,并且满足 x≥Bix\ge B_ix≥Bi
若 i=k−1i=k-1i=k−1 则结论显然成立
若 i<k−1i<k-1i<k−1 证明如下:
此时的总代价为 costi+∑j=i+1k∣aj−x∣cost_i+\sum\limits_{j=i+1}^k|a_j-x|costi+j=i+1∑k∣aj−x∣
对于固定的 iii 而言,左半部分是固定的,右半部分是一个绝对值函数,且是一个凸函数,其取最小值时, xxx 为 [i+1,k][i+1,k][i+1,k] 之间的中位数,也就是说,一定存在一个 apa_pap , 使得 x=apx=a_px=ap 那么当然就有 Bk=x=ap∈AB_k=x=a_p \in ABk=x=ap∈A
又因为在这种情况下只有这样调整才能满足单调性,所以最优解的对应方案一定在这种调整方式中,即一定存在一个固定的 iii 能够让这种情况下的代价最小,而对于任意一个 iii 都满足上述性质,所以结论成立
Q.E.D\mathcal{Q.E.D}Q.E.D