尝试证明了一下C

先讨论个数为偶数,不妨设排序后数组为,讨论序列。对任意满足,有

  • 如果不是序列的最值,交换会使最大值变大/不变和(或)最小值变小/不变
  • 如果是序列的最大值,交换得到的
  • 如果是序列的最大值,交换得到的
  • 如果是序列的最小值,交换得到的
  • 如果是序列的最小值,交换得到的

再讨论个数为奇数,不妨设排序后数组为,讨论序列。对任意满足

  • 如果不是序列的最值,交换会使最大值变大/不变和(或)最小值变小/不变
  • 如果,交换得到的
  • 如果,交换得到的
  • 如果,交换得到的
  • 如果,交换得到的
全部评论

相关推荐

1 收藏 评论
分享
牛客网
牛客企业服务