- 博客(1)
- 收藏
- 关注
原创 ACcoders 10968 Problem C 中位数
每次加入数字时,先判断左右半边数字数量的差值是否大于1,如果是,则需要进行调整。具体来说,如果左半边数量比右半边多2个,那么将左边的堆顶元素弹出并加入右边的堆中;我们可以使用两个堆来维护这个数字序列,一个大根堆用来存储左半边的数字,一个小根堆用来存储右半边的数字。为了方便,我们要让左半边的数字数量始终要么和右半边一样(此时总共有偶数个数字),要么比右半边多一个(此时总共有奇数个数字)。3. 询问此时串的最中间的数,也就是假设当前有 个数,输出第eil((m + 1) / 2)个数。第一行包含一个整数。
2023-10-01 15:13:42 122
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人