尝试证明了一下C
先讨论个数为偶数,不妨设排序后数组为,讨论序列。对任意满足且,有
- 如果与不是序列的最值,交换会使最大值变大/不变和(或)最小值变小/不变
- 如果是序列的最大值,交换得到的
- 如果是序列的最大值,交换得到的
- 如果是序列的最小值,交换得到的
- 如果是序列的最小值,交换得到的
再讨论个数为奇数,不妨设排序后数组为,讨论序列。对任意满足有。
- 如果与不是序列的最值,交换会使最大值变大/不变和(或)最小值变小/不变
- 如果,交换得到的
- 如果,交换得到的
- 如果,交换得到的
- 如果,交换得到的
先讨论个数为偶数,不妨设排序后数组为,讨论序列。对任意满足且,有
再讨论个数为奇数,不妨设排序后数组为,讨论序列。对任意满足有。
相关推荐