AHOI D1T2 Solution

来源:互联网 发布:三维数据图表ae模板 编辑:程序博客网 时间:2024/05/14 10:40

首先考虑区间[l,r]的长度小于L,那么就是区间最大值最小值,使用单调队列解决。
对于Lrl+1R:
首先二分答案ans,判断是否存在i,jajai(ji+k)ans
[l,r]中的最大值在最小值后面即i<j
ci=aiians,则有cjcikans,求max{cjci}kans比较即可。
枚举i,问题转换成在[i+L1,i+R1]中求最大的cj
发现其左右端点都随i单调,于是单调队列维护区间最值就可以解决。
对于最大值在最小值前面的情况,只要将c数组倒置,再做一次。
时间复杂度O(nlogn),期望100分。

0 0
原创粉丝点击