考虑一个很直觉的东西,可行的中位数一定是连续的。具体来说,你将一个区间左右端点扩展,中位数一定只会有 \(+1, -1\) 的变化,因此覆盖到的区间一定是连续的。
我们找出可以的最小的中位数,和最大的中位数,类似莫队去扩展,此时只需要支持加入删除和动态维护中位数即可。
如果此时向左向右扩展,可以保证的是区间长度 \(\ge k\) 时,其中位数一定大于最小的中位数,否则最小的中位数就不是它了。
考虑一个很直觉的东西,可行的中位数一定是连续的。具体来说,你将一个区间左右端点扩展,中位数一定只会有 \(+1, -1\) 的变化,因此覆盖到的区间一定是连续的。
我们找出可以的最小的中位数,和最大的中位数,类似莫队去扩展,此时只需要支持加入删除和动态维护中位数即可。
如果此时向左向右扩展,可以保证的是区间长度 \(\ge k\) 时,其中位数一定大于最小的中位数,否则最小的中位数就不是它了。
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/940883.shtml
如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!