讨论区题解
查看原帖
讨论区题解
174045
FZzzz楼主2022/7/12 16:17

好像没有题解给了一些很重要的东西的证明,可能它对于除了我以外的人都真的过于显然。

但是题解满了,我也懒得新写一篇题解然后找管理放进题解区 这人怎么连现成的社区贡献分都不赚,就只写个证明丢在这了。


首先求逆,相差小于 kk 的数相对位置不变。这是题解都说了的,问题在于为啥求一个满足这个限制的最优排列就做完了呢?换句话说,为啥这个限制是充分的呢?

事实上,考虑两个满足这个限制的排列 ppqq,我们需要证明 pp 一定可以变成 qq。用 pp 关于 qq 的逆序对来刻画两个排列之间的不同:i<ji<j 的对数,使得 qqpip_ipjp_j 后面。

pqp\ne q 时我们一定能找到一个 ii,使得 qqpip_ipi+1p_{i+1} 后面。由于 ppqq 都满足上述限制,那么一定有 pipi+1k|p_i-p_{i+1}|\ge k。交换 pip_ipi+1p_{i+1} 会使得逆序对数减少,所以 pp 一定能变成 qq

这就是兔队题解里“限于篇幅不证”的证明,好像不是很长吼。

如果令 qq 是满足限制的最优排列,根据证明过程我们还可以得到一个结论:对于 pipi+1kp_i-p_{i+1}\ge k,直接交换 pip_ipi+1p_{i+1} 一定是不劣的。这保证了 @linghuchong_ 的排山倒海气贯长虹(下略)做法的正确性。

另外,求逆以后目标实际上并不是字典序最小。至于为什么在这题里直接求最小字典序是对的,兔队的题解里给出了一种证明。但根据上述结论,我们实际上可以直接得到最优解和字典序最小解是等价的。

2022/7/12 16:17
加载中...