给定一个长度为n的数组a下标从1开始对于所有i∈[1,n]∩Z,求出区间 [1,i] 中第k小的数。其中k为给定常数。如果区间内的数的数量不足k个,请输出−1。
1. 使用最大堆 为了高效地求出每个前缀区间 [1,i] 的第 k 小的数,我们可以使用最大堆来动态维护前 k 小的元素。
给定一个长度为 n 的数组 a (下标从 1 开始),对于所有 i∈[1,n]∩Z ,求出区间 [1,i] 中第 k 小的数。其中 k 为给定常数。
By signing up a CodeFun2000 universal account, you can submit code and join discussions in all online judging services provided by us.