Banner image of the blog
站长头像

YaLi Blog

DarkClever的个人博客

文章 评论 标签
8 0 5
分类列表

联考题解

日期:2025-10-07浏览:0 编辑

T1

设 $f_{i,j}$ 为 $A$ 序列最后一个为 $i$,$B$ 序列最后一个为 $j$,所得到的 $|A|+|B|$ 最大值。

直接转移即可。

T2

注意到翻转 $l,r$ 时只有 $l,r$ 这个区间内的改变会有贡献。

此时假设 $g_i$ 为 $\sum_{j=1}^i \max_{k=j}^i A_k$。那么有对于一个 $i$,找到 $i$ 以前最后一个$A_j>A_i$ 的位置 $j$,那么 $g_i=g_j+(i-j) \times A_i$。

找到在 $l$ 以前最后一个大于 $\max_{i=l}^r A_i$ 的 $j$,所以 $l \sim r$ 的答案就是 $g_r-g_j-(l-j)\times \max_{i=l}^r A_i$。

同时要特殊处理一下 $l \sim r$ 后面部分,因为 $A_1 \sim A_{l-1}$ 的最大值会影响到 $l \sim r$ 的答案。

T3T4

太史了,先鸽着