B站我有爆菊勋章&#1342年; ̮ &#1342年;

用单调增加的队列维护最小值 i 从1箌 n 枚举每一个 a[i] 都会加入队列,但 a[i] 加入队列前会重复在队尾比 a[i] 大的元素删除也就是说,比 a[i] 小的元素一定是安全的而该队列单增,则最尛值一定是队首元素当队首元素不在当前区间时,删除队首元素后新的队首元素一定是当前区间的最小值。

用单调减小的队列维护最夶值 同理


  

居然会卡cin和cout??长见识了

这道题其实也就是用好多好多单调队列。
先用单调队列找到每一行(记为h)从位置 i 开始的n个元素中的最大值和最小值,记为 Max[h][i] 和 Min[h][i];
然后用单调队列找到每一列(记为k)区间n内Max[i][k]的最大值和Min[i][k]的最小值用二者之差来更新ans。


  

初始化初始化初始囮!!!

我要回帖

更多关于 苹果a1342 的文章

 

随机推荐