>Link
luogu AT1218
>Description
给出一个长度为 n n n 的序列,每次可以交换相邻的两个数,问最少交换多少次使得序列变为一个单峰序列
>解题思路
从小到大枚举每一个数,判断放在左边还是右边
放在左/右边,这个数就要“跨过”它原本左/右边比它大的数,我们就加上它左/右边比它大的数的个数
我们可以手玩一下证明,这样做是最优的。如果一个数 A A A要放到左边去,原本它左边有比它小的数 B B B也要放在左边,乍一看我们好像忽略了 B B B与 A A A交换的次数,但其实 B B B肯定是在 A A A之前就交换过去了,不会与