贪心学习笔记
排序不等式
内容
设有两个长为 \(n\) 的单调不降的数列,分别为 \(A=(a_1,a_2,\cdots,a_n)\) 和 \(B=(b_1,b_2,\cdots,b_n)\),\((p_1,p_2,\cdots,p_n)\) 是自然数 \(1\) 到 \(n\) 的任意一个排列,则有:
\[\sum_{i=1}^n a_ib_{n-i+1}\le\sum_{i=1}^n a_ib_{p_i}\le\sum_{i=1}^n a_ib_i
\]
简记:逆序和小于等于乱序和小于等于顺序和。
证明
令 \(x_i=\sum_{j=1}^i b_j\),\(y_i=\sum_{j=1}^i b_{p_j}\),\(z_i=\sum_{j=1}^i b_{n-j+1}\)。
易得:当 \(i<n\) 时,\(x_i\le y_i\le z_i\)。\(x_n=y_n=z_n\)。
\(\because a_i-a_{i+1}\le 0\)
\(\therefore (a_i-a_{i+1})x_i\ge (a_i-a_{i+1})y_i\ge (a_i-a_{i+1})z_i\)
因为(展开即可推出):
\[a_nx_n+\sum_{i=1}^{n-1}(a_i-a_{i+1})x_i=\sum_{i=1}^na_ib_i
\]
\[a_ny_n+\sum_{i=1}^{n-1}(a_i-a_{i+1})y_i=\sum_{i=1}^na_ib_{p_i}
\]
\[a_nz_n+\sum_{i=1}^{n-1}(a_i-a_{i+1})z_i=\sum_{i=1}^na_ib_{n-i+1}
\]
所以:
\[\sum_{i=1}^n a_ib_{n-i+1}\le\sum_{i=1}^n a_ib_{p_i}\le\sum_{i=1}^n a_ib_i
\]
例题
P1966 NOIP2013 D1T2 火柴排队
因为:
\[\sum(a_i-b_i)^2=\sum a_i^2+\sum b_i^2-\sum a_ib_i
\]
所以只要让 \(\sum a_ib_i\) 最大即可。

浙公网安备 33010602011771号