z4
  • 2024-08-23P3793 由乃救爷爷
    题意给定一个长度为\(n\)的序列(\(1\len\le2\times10^7\)),对于每组询问\([l,r]\),找到其区间最大值,并进行累加。思路\(n\)太大,不能用ST表/线段树,考虑以下表为键值,数值为优先级建出笛卡尔树。对于左右两个端点\([l,r]\),我们从笛卡尔树顶端往下跑,找到一个\(l\le