AT4538 Flowers

题意

带权值最长上升子序列。

解法

考虑 dp,和普通最长上升子序列一样,设 dpidp_i 表示以 ii 为结尾的最长上升子序列的权值和,则有 dpi=(maxj=1i1{dpjhj<hi0hjhi)+hidp_i = (\max_{j=1}^{i-1} \begin{cases} dp_j & h_j < h_i \\ 0 & h_j \ge h_i\end{cases}) + h_i,显然这个转移是 O(n2)O(n^2) 的,而 max\max 可以值域线段树维护,支持单点修改区间查询,复杂度 O(nlogn)O(n \log n)

posted @ 2022-05-02 16:08  HappyBobb  阅读(14)  评论(0)    收藏  举报  来源