我们发现求 k 个数的中位数本质上是求第 \left\lceil\frac{k}{2}\right\rceil 大值,因此只关注前 \left\lceil\frac{m}{2}\right\rceil 个数的取值即可,不用考虑剩余的 \left\lfloor\frac{m}{2}\right\rfloor 个数的具体值。
将题目中划分为 k 段转化成 k-1 条分割线,正常情况下将 2 条分割线划在 a_i 的一左一右可以使这个区间的中位数为 a_i。
把 a 数组排序,设 a 数组降序排序后的数组为 c。考虑贪心,依次给 c_{n-1},c_{n-2},\dots,c_{\left\lceil\frac{m}{2}\right\rceil} 在原 a 数组中的位置的左右两边都加上分隔线,此时对于 k 为偶数则需 k 条分割线,k 为奇数则需要 k+1 条。